【发布时间】:2014-10-17 17:19:19
【问题描述】:
我想让用户只输入“y”“Y”“n”或“N”。结果代码要求用户在输入正确的输入后输入 Y 或 N,这与我通过放置 !在 input.equalscaseignore(input) 前面。
import java.util.Scanner;
class inputVal {
public static void main(String[] args) {
String Input;
Scanner keyboard = new Scanner(System.in);
System.out.println("Please enter Y or N. ");
Input = keyboard.nextLine();
while (!Input.equalsIgnoreCase("Y") || !Input.equalsIgnoreCase("N"))
{
System.out.println("Please enter Y or N");
Input = keyboard.nextLine();
}
keyboard.close();
}
}
【问题讨论】:
-
问题是如果用户输入 N 则 !Input.equalsIgnoreCase("Y") 变为真 ..如果用户输入 Y 则 !Input.equalsIgnoreCase("N") 变为真所以它总是到while里面
标签: java validation input