#java
#java
Вопрос:
Я пытаюсь проверить входные данные от пользователя. Пользователю необходимо ввести (y нажмите enter) много раз. Если пользователь нажимает enter без (y), есть ли способ проверить клавишу ввода?
public static void getInput() {
Scanner input = new Scanner(System.in);
System.out.print("Press 'y' to continue, 'n' to exit: ");
char c = input.nextLine().charAt(0);
if (c == 'n') {
System.out.println("Exiting");
System.exit(0);
}
while (c != 'y') {
System.out.println("Invalid input!");
System.out.println("Press 'y' to continue, 'n' to exit: ");
c = input.nextLine().charAt(0);
}
if (c == 'n') {
System.out.println("Exiting");
System.exit(0);
}
}
Ответ №1:
Просто проверьте, пуста ли строка ввода:
String line = input.nextLine()
if(line.isEmpty())
//handle no input
Ответ №2:
Это может помочь.
Scanner input = new Scanner(System.in);
while(true){
System.out.print("Press 'y' to continue, 'n' to exit: ");
char c = input.nextLine().charAt(0);
if(c == 'n'){
System.out.println("Exiting...");
break;
}
else if(c == 'y'){
//call your method here
//method();
System.out.println("User has input Y");
break;
}
else{
System.out.println("Please enter a valid keyword");
}
}
Или вы можете использовать случай переключения.