*изменено сканирование ввода
Я пытаюсь завершить цикл while с помощью клавиши ввода/пустой строки. Тестовые коды ниже работают нормально.
Scanner scan = new Scanner(System.in);
String line;
while ( (line=scan.nextLine()).length() > 0)
{
System.out.println(line);
}
Однако, когда я интегрирую его в свою основную программу (цикл while помещается в регистр int switch внутри цикла do-while), программа пропускает коды @case2 и продолжает цикл do-while.
int input;
do{
System.out.print("Choose a function (-1 to exit): ");
input=scan.nextInt();
switch (input)
{
case 1:
break;
case 2:
//same while loop here
break;
}
}while(input!=-1);
Пример вывода:
Choose a function (-1 to exit): 1
Choose a function (-1 to exit): 2
//skip case2 coding
Choose a function (-1 to exit): 1
Choose a function (-1 to exit): -1
//program ends
input
. - person markspace   schedule 20.06.2015semicolon
- person Johny   schedule 20.06.2015