循环 Java 的退出数组



请考虑下面的代码:

System.out.println("Insert your inventory");
for (int i = 0; i<20;i++) {
System.out.print(i+1+".");
if (inventory[i] == "N" || inventory[i]=="n") {
break;
}
inventory[i] = s.nextLine();     
}

如果用户输入"N"或"n",如何退出此循环?

您正在将字符串与运算符进行比较==。它不会产生正确的结果,因为常量字符串"N"和输入的"N"没有相同的引用/指针。

您必须使用equals()来保证字符串之间的正确比较结果。

取代

if (inventory[i] == "N" || inventory[i]=="n") 

if (inventory[i].equals("N") || inventory[i].equals("n")) 

您应该将 String 变量与.equals()方法而不是==运算符进行比较。

关于为什么这很重要的解释可以在StackOverflow上找到。

相关内容

  • 没有找到相关文章

最新更新