Код простой, который говорит нам ,пока условие истинно. Мы считываем строку и тут же проверяем если строка пустая , то в лист мы ни чего не добавляем, НО! я ввожу строку не пустую и у меня появляется следующая ошибка: !!! Осуществлена попытка доступа к не инициализированному объекту (Null). и показывает на ошибку в строке if (s.isEmpty()) break; , почему она появляется ? Если строка не пустая!?
while (true) {
            String s = reader.readLine();
                if (s.isEmpty()) break;
                        list.add(s);
        }
Причем такой вариант работает нормально :
while (true) {
           String s = reader.readLine();
               if (s == null) break;
                   list.add(s);
       }
Но нам же надо что бы было все правильно и что бы память использовать по минимум и как мы знаем метод isEmpty() при сравнивании строки на пустоту использует минимум памяти, так что прошу помочь с моей проблемой