Sobes.tech
Назад к вопросам
Junior — Middle
67

Какие последствия могут возникнуть, если в Stream встретится элемент со значением null?

Ответ от нейросети

sobes.tech AI

В Java Stream API встреча элемента со значением null может привести к NullPointerException, так как многие операции в стримах не ожидают null и не умеют с ними работать.

Например, если в стриме вызвать метод map или filter, и при этом элемент равен null, то при попытке вызвать метод на этом элементе будет выброшено исключение.

Чтобы избежать проблем, рекомендуется:

  • Исключать null элементы из стрима с помощью filter(Objects::nonNull).
  • Обрабатывать null явно, если это необходимо.

Пример:

List<String> list = Arrays.asList("a", null, "b");

list.stream()
    .filter(Objects::nonNull) // исключаем null
    .map(String::toUpperCase)
    .forEach(System.out::println);

Таким образом, наличие null в стриме без обработки может привести к ошибкам во время выполнения.