Подтвердить что ты не робот

Как читать символы в строке в java

Я новичок в java, поэтому извините, если это очевидный вопрос.

Я пытаюсь прочитать строковый символ по символу для создания узлов дерева. например, ввод "HJIOADH" И узлы H J I O A D H

Я заметил, что

char node = reader.next().charAt(0);  I can get the first char H by this
char node = reader.next().charAt(1);  I can get the second char J by this

Можно ли использовать цикл для получения всех символов? как

for i to n
    node = reader.next().charAt(i)

Я пробовал, но он не работает.

Как я могу это сделать?

Большое спасибо за любую помощь.

Сканер-считыватель = новый сканер (System.in);   System.out.println( "введите ваши узлы в виде заглавных букв без пробела и" / "в конце" );       int я = 0;    char node= reader.next(). charAt (i);   while (node!= '/') {

        CreateNode(node); // this is a function to create a tree node
        i++;
        node = reader.next().charAt(i);

    }
4b9b3361

Ответ 1

Вы хотите только next() читать ваш читатель один раз, если только он не имеет много того же toke nrepeated снова и снова.

String nodes = reader.next();
for(int i = 0; i < nodes.length(); i++) {
    System.out.println(nodes.charAt(i));
}

Ответ 2

как упоминал Braj, вы можете попробовать reader.toCharArray(), и тогда вы можете легко использовать цикл

char[] array = reader.toCharArray();
for (char ch : array) {
    System.out.println (ch);
}