【发布时间】:2014-10-29 15:04:46
【问题描述】:
我的程序有一点小问题,我确定它出在这个循环和 if-else 语句中:
for (int i = 0; i < xArray.length; i++)
{
if(searchNumber == xArray[i])
{
found = true;
if(found)
{
System.out.println("We have found your number " + searchNumber + " at position " + i + " in the array. " );
}
else
{
System.out.println("No match was found.");
}
break;
}
}
当我执行程序时发生的情况是,如果找到了 searchNumber(通过带有键盘输入的扫描仪获取),那么它将显示适当的消息,说明它已找到,但如果未找到,则没有消息显示。我尝试通过讲述每一行代码在做什么来调试它,但是当我进入这个循环时,我感到非常困惑。
【问题讨论】:
-
你需要在循环外显示消息
-
究竟是什么不工作,你对什么感到困惑?
-
您试图在条件中显示“未找到”,只有在找到时才会触发。
-
如果我在消息中没有 i 变量,这可以工作,但我想显示在数组的哪个索引中找到了数字。
-
searchNumber 是
Strings 的数组吗?如果是这种情况,则需要使用.equals方法;==在这里不起作用。
标签: java if-statement for-loop break