为了账号安全,请及时绑定邮箱和手机立即绑定

返回布尔值的 if 语句函数

返回布尔值的 if 语句函数

杨__羊羊 2022-07-06 18:24:49
用 Java 编写一个实现以下逻辑的函数: 你的手机响了。如果您应该回答,则返回 true。通常你会接听,除了早上你只接你妈妈的电话。在所有情况下,如果你睡着了,你就不会回答。public boolean answerCell(boolean isMorning, boolean isMom, boolean isAsleep){    if (isMom && isMorning && isAsleep)    {        return false;    }    if ((!isMom) && isMorning && isAsleep)    {        return false;    }    if (isMorning && isMom && (!isAsleep))    {        return true;    }    if ((!isMorning) && isMom && isAsleep)    {        return false;    }    else    {        return true;    }}对于我上面写的代码,我只得到了 63% 的问题覆盖率,我不知道为什么。我收到的反馈说(假,假,真)是真的,但我期待的是假的。and (true, false, false) 是真的,但它也应该是假的。
查看完整描述

3 回答

?
开满天机

TA贡献1786条经验 获得超13个赞

简化 if 语句


这是详细的方法,因此您可以了解应该做什么:


public boolean answerCell(boolean isMorning, boolean isMom, boolean isAsleep){

    if(isAsleep){

        return false;

    }else{

        if(isMorning){

            if(isMom){

                return true;

            }else{

                return false;

            }

        }else{

            return true;

        }

    }

}

但这是您可以使用一行 If 语句执行的操作:


public boolean answerCell(boolean isMorning, boolean isMom, boolean isAsleep){

    return isAsleep?false:isMorning?isMom:true;

}

如果您需要有关单行 if 语句的更多信息,您可以查看此资源,尽管网络上有很多信息。


查看完整回答
反对 回复 2022-07-06
?
梦里花落0921

TA贡献1772条经验 获得超6个赞

public boolean answerCell(boolean isMorning, boolean isMom, boolean isAsleep) {

            

        if(isAsleep==true)

        {           

            return false;

        }

        else if( (isMorning ==false) && (isMom==false) && (isAsleep==false))

        {

            

            return true;

        }

        else if( (isMorning ==true) && ((isMom==true) ))

        {

            

            return true;

        }

        else if( (isMorning ==true) && ((isMom==false) ||(isAsleep==false)))

        {

            

            return false;

        }

        else

        {       

            return true;

        }       

    }


查看完整回答
反对 回复 2022-07-06
?
繁华开满天机

TA贡献1816条经验 获得超4个赞

尽量不要将所有条件分解为单个语句。一步一步解决问题。


通常你会回答,


return true;

除了早上你只接听你妈妈的电话。


if (isMorning) {

    if (isMom) {

        return true;

    }

    else {

        return false;

    }

return true;

在所有情况下,如果你睡着了,你就不会回答。


if (isAsleep) {

    return false;

}

if (isMorning) {

    if (isMom) {

        return true;

    }

    else {

        return false;

    }

return true;


查看完整回答
反对 回复 2022-07-06
  • 3 回答
  • 0 关注
  • 149 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号