繁体   English   中英

如果用户输入不是 y 或 n,如何使 y/n 用户输入循环?

[英]How to make y/n user input loop if the user input is not y or n?

我必须在 java 编程中制作基于文本的游戏。 如果字符串用户输入不是 y 或 n 并且如果它们是 y 或 n 则遵循代码,我想实现循环。

我添加了一个 do while 循环两次。 第一次循环无限循环。 然后第二次循环继续循环,即使输入是 y 或 n。

char YNinput = ' ';
Scanner sc = new Scanner(System.in);
System.out.print("Do you want to play (Yes or No) ");
YNinput = sc.nextLine().trim().toLowerCase().charAt(0);

因为我使用了 if else 语句,所以现在没有错误,但是当我添加循环时有很多错误。 Ecpected - 仅当输入不是 y 或 n 时才循环,如果输入是 y 或 n 则再次循环后,然后执行代码。

无限循环可能是循环条件不正确的结果。 尝试这个:

char YNinput = 0;
Scanner sc = new Scanner(System.in);

do {
    System.out.print("Do you want to play (Yes or No) ");
    YNinput = sc.nextLine().trim().toLowerCase().charAt(0);
} while (YNinput != 'y' && YNinput != 'n');

sc.close();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM