Ошибка «не удается найти символ» с помощью reader.nextLine () - PullRequest
2 голосов
/ 09 июня 2019

Вот мой код (это код для обращения к заданной строке)

    import java.util.Scanner;

public class ReversingName {
    public static String reverse(String text) {
    // write your code here
    int strlenght= text.length();
    int i=1;
    String str= "";
    while (i<=strlenght){
        char test= text.charAt(strlenght-1);
        str=str+test;
    }
    return str;
}


public static void main(String[] args) {
    System.out.print("Type in your text: ");
    String text = reader.nextLine();
    System.out.println("In reverse order: " + reverse(text));
}
}

Но я не могу принять входные данные, потому что, когда я пытаюсь получить строковый ввод, я получаю сообщение «не могу найти ошибку символа», хотя я четко определил переменную «текст».

Этот вопрос взят из курса Java OOP MOOC.fi, и его можно найти здесь (вопрос 52, если это поможет): https://materiaalit.github.io/2013-oo-programming/part1/week-3/

Ответы [ 2 ]

2 голосов
/ 09 июня 2019

reader никогда не объявляется.На первый взгляд кажется, что это должен быть экземпляр Scanner:

public static void main(String[] args) {
    Scanner reader = new Scanner(System.in); // Declare and initialize reader
    System.out.print("Type in your text: ");
    String text = reader.nextLine();
    System.out.println("In reverse order: " + reverse(text));
}
1 голос
/ 09 июня 2019

Как Мурейник сказал, что вы никогда не создавали reader.

Ваш цикл while также не будет работать должным образом и никогда не остановится.Добавление strlenght-- в конце должно заставить его работать правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...