我一直在做一个简单的骰子扑克项目,我似乎无法让我的程序让用户重播而不重复几行。
示例:
private static boolean promptForPlayAgain(Scanner inScanner) {
System.out.println("Would you like to play again [Y/N]?: ");
String str = inScanner.nextLine();
while (!(str.equalsIgnoreCase("Y") || str.equalsIgnoreCase("N"))){
System.out.println("ERROR! Only 'Y' or 'N' allowed as input!");
System.out.println("Would you like to play again [Y/N]?: ");
str = inScanner.nextLine();
}
if (str.equalsIgnoreCase("Y")){
return true;
}
if (str.equalsIgnoreCase("N")){
return false;
}
return false;
}
这是我的代码,在用户输入任何内容之前,它会输出:
你想再玩一次[Y / N]吗?:
ERROR!只允许'Y'或'N'作为输入!
你想再玩一次[Y / N]吗?:
它似乎跳过我原来的str声明并执行while循环。我做错了什么?