@WWH

Что некорректного в моей записи?

Есть запись
while (!chipher.l1.equals("  ")
                && !chipher.l2.equals("..")
                && !chipher.l3.equals(" .")) {
            
            chipher.l1 = input.nextLine();
            chipher.l2 = input.nextLine();
            chipher.l3 = input.nextLine();

            test(chipher);

}

chipher является обьектом, l1,2,3 - поля типа String.
Компилятор не выдает контретной ошибки. Пишет только вот это:
Exception in thread "main" java.lang.NullPointerException
	at brael.Brael.main(Brael.java:20)
/home/eleot/.cache/netbeans/8.2/executor-snippets/run.xml:53: Java returned: 1
СБОРКА ЗАВЕРШЕНА СО СБОЕМ (общее время: 0 секунд)

P.S Задачта такова, что я должен перевести предложение написанное шифром Брайля в обычный текст. Та часть кода программы, что находится здесь должна проверять ввод на наличие символа точки.
  • Вопрос задан
  • 136 просмотров
Пригласить эксперта
Ответы на вопрос 1
@red-barbarian
в строке 20. там null
конечно иногда сообщения об exception выглядят замысловато, то чаще всего там достаточно данных, что бы понять в чем проблема. читайте их.
обычно java.lang.NullPointerException вылетает если мы читаем (или вызываем метод) поле переменной которая равна null
пример
chipher = null (обычно по умолчанию. если не примитив)
chipher.l1 = ... здесь чтение chipher.l1, но chipher null и естественно поле не вычисляется
или chipher.l1.equals(" ") если chipher.l1 == null

следите за этим. Это самая частое исключение (на мой взгляд)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы