我有一种检查用户是否为学生的方法,但是我无法通过它验证条件。
char custStud = '0';
Scanner input = new Scanner(System.in);
do{
System.out.println("Are you a student? (Type Y or N): ");
custStud = input.next().charAt(0);
custStud = Character.toLowerCase(custStud);
}
while (custStud != 'y' || custStud != 'n');
当我启动该程序时,即使输入了“ y”或“ n”,它也不会中断循环。我怀疑custStud更改为小写字母后可能会意外更改类型,但是我不确定。
如何使此循环正常工作?
最佳答案
while (custStud != 'y' || custStud != 'n')
始终为true,因为custStud
不能同时等于'y'和'n'。
您应将条件更改为:
while (custStud != 'y' && custStud != 'n')