【发布时间】:2016-04-28 02:06:38
【问题描述】:
如果数组中没有元素包含 2 或 3,我的任务是返回一个布尔表达式。
boolean no23(int[] nums)
{
boolean no23 = false;
for (int i=0; i<2; i++)
{
if (nums[i]==2 || nums[i]==3)
{
no23 = false;
}
else
{
no23 = true;
}
}
return no23;
}
我的问题是:如果第一个数字是 3,我得到了 false back,但如果第二个数字是 5,我得到了 true。所以最终的回报是真实的,这是一个错误。
我该如何解决这个问题?
感谢您的帮助。
【问题讨论】:
-
返回一个布尔表达式 TRUE,对不起 :-)
-
关于这一行:
boolean no23(int[] nums)1)boolean是如何定义的? 2) 参数的正确格式为:int nums[],因此代码无法编译。关于代码逻辑。强烈建议:将返回变量初始化为true,并移除else代码块。在if代码块中,设置返回变量为false后,通过break;退出循环