Я только новичок в кодировании java, я просто писал простую программу: пользователю предоставляется меню, в котором он должен ввести число от 1 до 4, если пользователь вводит правильный номер, требуемая задача выполняется, если введен неправильный номер, пользователя снова спрашивают для ввода. Ниже моя программа
class menu {
public static void main(String [] args) throws java.io.IOException {
int choice;
do
{
System.out.println("HELP MENU: ");
System.out.println("IF STATEMENT: 1 ");
System.out.println("WHILE: 2 ");
System.out.println("DO WHILE: 3 ");
System.out.println("SWITCH: 4 ");
choice = System.in.read();
System.out.println(choice);
}
while( choice < 1 || choice > 4);
System.out.println("\n");
System.out.println(choice);
switch (choice)
{
case 1:
System.out.println("if statement is selected");
break;
case 2:
System.out.println("while statement is selected");
break;
case 3:
System.out.println("do while statement is selected");
break;
case 4:
System.out.println("switch statement is selected");
break;
}
}
}
ВЫВОД: +++++++
E:\study\javacode>java menu
HELP MENU:
IF STATEMENT: 1
WHILE: 2
DO WHILE: 3
SWITCH: 4
4
52
HELP MENU:
IF STATEMENT: 1
WHILE: 2
DO WHILE: 3
SWITCH: 4
13
HELP MENU:
IF STATEMENT: 1
WHILE: 2
DO WHILE: 3
SWITCH: 4
10
HELP MENU:
IF STATEMENT: 1
WHILE: 2
DO WHILE: 3
SWITCH: 4
что бы пользователь ни вводил с клавиатуры, код продолжает повторяться через цикл do-while. я определил причину, распечатав входное значение, и я обнаружил, что входное значение ошибочно принимается кодом. Пожалуйста, помогите решить эту проблему.