Как добавить символ в массив? - PullRequest
0 голосов
/ 08 мая 2018

У меня есть вопрос, основанный на массивах символов. На данный момент у меня есть переменная input, которая принимает первую букву слова.

char input = scanner.nextLine().charAt(0);

Что я хочу сделать, так это для каждого ввода, я хочу поместить его в массив, чтобы я мог вести журнал всех полученных писем. Я предполагаю, что это использует char [], но у меня возникают проблемы при реализации добавления каждого ввода в массив.

1 Ответ

0 голосов
/ 08 мая 2018
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

...