java为什么这个基本的main方法while循环不起作用?没有语法错误
-我删掉了主代码,因为它似乎不必要,问题似乎在于此,代码运行一次,然后即使我键入“是”作为扫描仪的答案,循环也会停止。它只循环一次
String bool = "yes";
while (bool == "yes") {
int e1 = whichExam();
printinfo(pp, csn, isa, fwt, lds, afl, oop, e1);
Scanner scanner = new Scanner(System.in);
System.out.println("Do you want to check another exam ('yes' or 'no')?");
bool = scanner.nextLine();
}
# 1 楼答案
简短答复:
您正在错误地比较
strings
:应该是:
详细回答:
当您执行}
while (bool == "yes")
时,您正在检查两个String
引用是否指向内存中的同一个对象,因为这是而不是,因此在之后的情况第一次检查该条件,因此循环只执行一次。您可能还想使用^{