char input = scanner.nextLine().charAt(0);
Первое, что неясно, это какой тип объекта является сканером?
Но сейчас я предполагаю, что сканер - это объект Scanner из Java.util.Scanner
В этом случае scanner.nextLine () фактически возвращает строку.
В строке есть метод charAt (), который позволит вам выбрать символ в любом месте строки.
Однако scanner.nextLine()
получает всю строку, а не только одно слово. Таким образом, scanner.nextLine().charAt(0)
получает первый символ в строке.
scanner.next()
даст вам следующее слово в строке.
Если строка содержит «Hello World»
scanner.next().charAt(0)
вернул бы символ 'H'.
следующий вызов scanner.next().charAt(0)
вернет символ 'W'
public static void main(String[] args) {
boolean finished = false;
ArrayList<Character> firstLetters = new ArrayList<>();
Scanner scanner = new Scanner(System.in);
while (!finished) {
firstLetters.add(scanner.next().charAt(0));
}
}
Приведенный выше пример кода может дать вам поведение, которое вы ищете.
Обратите внимание, что цикл while будет работать вечно, пока finished
не станет истинным.
Ваша программа должна будет решить, когда установить finished
в true.
И вот пара ссылок о классе Java Scanner