Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Java: NullPointerException, Java, string, null safety, optional

Как избежать NullPointerException при работе со строками?

Проверяет понимание способов предотвращения NullPointerException при работе со строками в Java.

Короткий ответ

NullPointerException (NPE) возникает при вызове методов на null-ссылке. Чтобы избежать NPE со строками, всегда проверяйте строку на null перед использованием, используйте тернарный оператор для подстановки значения по умолчанию или применяйте класс Optional. Также можно использовать методы String.valueOf() или Objects.toString().

Длинный ответ

Что такое NullPointerException и почему он возникает?

NullPointerException (NPE) — это исключение в Java, которое выбрасывается, когда программа пытается вызвать метод или получить доступ к полю объекта, ссылка на который равна null. Со строками это часто происходит при вызове методов, таких как length(), equals(), charAt() и других, на переменной, которая не была инициализирована.

Основные способы предотвращения NPE

  • Проверка на null: Перед использованием строки проверяйте её на null с помощью условия if (str != null).
  • Тернарный оператор: Используйте str != null ? str.length() : 0 для безопасного получения значения.
  • Класс Optional: Оберните строку в Optional.ofNullable(str) и используйте методы orElse() или ifPresent().
  • Методы String.valueOf() и Objects.toString(): Они преобразуют null в строку "null" или заданное значение по умолчанию.

Примеры кода

// Проверка на null
String str = null;
if (str != null) {
    System.out.println(str.length());
} else {
    System.out.println("String is null");
}

// Тернарный оператор
int length = (str != null) ? str.length() : 0;

// Использование Optional
Optional<String> optionalStr = Optional.ofNullable(str);
String result = optionalStr.orElse("default");

// String.valueOf()
System.out.println(String.valueOf(str)); // выведет "null"

Вывод

Применяйте проверки на null и утилиты вроде Optional для написания безопасного кода, особенно при работе с внешними данными или API, где строки могут быть null. Это повышает надёжность программы и предотвращает неожиданные сбои.

Уровень

  • Рейтинг:

    5

  • Сложность:

    2

Навыки

  • Java

    Java

Ключевые слова

#NullPointerException

#Java

#string

#null safety

#optional

Подпишись на Java Developer в телеграм