gpt4 book ai didi

java - 我的 while 循环不会因中断而停止?

转载 作者:行者123 更新时间:2023-12-01 16:49:11 25 4
gpt4 key购买 nike

if (sum < 6) {
System.out.println("You win");
System.out.println();
// Does the user want to retry?
System.out.print("Would you like to retry?(Y or N) : ");
String retry = input.nextLine();

while (true) {
// If they say y or Y, roll again
if (("y".equals(retry)) || ("Y".equals(retry))) {
roll();
// Check for anything other than y and Y
} else if (("n".equals(retry)) || ("N".equals(retry))) {
System.out.println("Closing");
break;
} else if (!("y".equals(retry)) || !("Y".equals(retry))) {
System.out.print("Invalid input. Would you like to retry?(Y or N) : ");
retry = input.nextLine();
System.out.println();

}
}
} else if (sum > 6) {
System.out.println("You lose");
System.out.println();
System.out.print("Would you like to retry?(Y or N) : ");
String retry = input.nextLine();
while (true) {
if (("y".equals(retry)) || ("Y".equals(retry))) {
roll();
} else if (("n".equals(retry)) || ("N".equals(retry))) {
System.out.println("Closing");
break;
} else if (!("y".equals(retry)) || !("Y".equals(retry))) {
System.out.print("Invalid input. Would you like to retry?(Y or N) : ");
retry = input.nextLine();
System.out.println();
}
}
}

我正在尝试制作一个骰子游戏,当用户输入 "y" 时,游戏将继续掷骰子。或"Y" 。我还希望它停止游戏并说 "Closing"当用户输入"n"时或"N" .

问题是,当用户输入"n"时或"N" ,它会打印出 "Closing"但循环不会停止,游戏将再次掷骰子。当用户输入 "n" 时如何使 while() 循环停止或"N"

这是用户选择停止游戏时的输出 ("n" or "N") : 会

you like to retry?(Y or N) : n
Closing
Rolling...
You rolled : 1 & 4
Sum = 5
You win

对于这么基本的问题,我很抱歉,我是编程新手。

最佳答案

将行 String retry = input.nextLine(); 移至 while 循环(在两个 if 分支中)。目前,您读取一个输入,然后一遍又一遍地比较该不变的输入。

关于java - 我的 while 循环不会因中断而停止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43969022/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com