Уже есть несколько очень хороших предложений.Позвольте мне дополнить.Если то, что вы ищете, является утверждением, как в выражении assert
, я хотел бы сделать это явным в коде, чтобы направить читателя относительно моей цели.Чтобы утверждать, что ваш исходный список не содержит null
s:
assert ! myList.contains(null);
Если утверждение должно быть проверено где-то вниз по конвейеру потока, простой способ:
assert myList.stream().map(this::transform).allMatch(Objects::nonNull);
Если вы не хотите создавать отдельный поток для утверждения, но предпочитаете утверждать в середине существующего потокового конвейера, используйте, например:
myList.stream()
.peek(e -> { assert e != null; })
.toArray();
Вы можете беспокоиться о том, что использование peek
не очень хорошо, поэтому я и упоминаю этот вариант в последний раз.peek
задокументировано, что он существует «главным образом для поддержки отладки» (цитата взята из его контекста), поэтому вы можете сказать, что он связан с целью assert
и, таким образом, защищать его использование в этом случае.