我在尝试验证用户响应退出我的应用程序或重试(它是一个简单的游戏)时遇到问题?当游戏结束时,我问用户是否要继续键入“y”表示“是”或“n”表示“否”退出。如何验证他们的响应,如果它既不是y或n我显示错误消息并要求他们再次输入???
这似乎不适合我?
if (!choice.equalsIgnoreCase("n") && !choice.equalsIgnoreCase("y"))
System.out.println("Error enter y for yes and n for no");
System.out.println("Would you like to play again (y/n):");
choice = sc.next();
答案 0 :(得分:2)
只需更改
即可 if (!choice.equalsIgnoreCase("n") && !choice.equalsIgnoreCase("y"))
到
while (!choice.equalsIgnoreCase("n") && !choice.equalsIgnoreCase("y"))
每次他们不选择字母'n'或'y'时,这将继续询问他们另一封信。
编辑:此外,您可能需要在if
(即将成为while
)声明中围绕代码括号。
答案 1 :(得分:0)
没有任何完整的背景,很难给出相关的答案。
但是您已经可以使用if
语句围绕大括号测试代码:
if (!choice.equalsIgnoreCase("n") && !choice.equalsIgnoreCase("y")){
System.out.println("Error enter y for yes and n for no");
System.out.println("Would you like to play again (y/n):");
choice = sc.next();
}
确实,使用您当前的代码,只有第一行:
System.out.println("Error enter y for yes and n for no");
根据您的情况考虑。