Как осуществить строчный ввод в switch в цикле while(true)

private static Scanner aScanner = new Scanner(System.in);
while (true) {
  switch(input){
    case 0:
      String input = aScanner.next();
      //По какой-то причине он не позволяет корректно ввести строку с пробелом. Что делать?
  }
}

Ответы (1 шт):

Автор решения: Komdosh

scanner.next(); - ищет "следующий" токен, который идёт до разделителя. По умолчанию разделитель как раз таки пробел, в итоге получается, что следующий токен это набор символов до пробела.

Возможно вам нужно считывать полную строку до переноса строки? Здесь есть 2 варианта:

  1. Явно задать разделитель scanner.useDelimiter("\n");
  2. Использовать scanner.nextLine();

Документация:

→ Ссылка