Вы можете воспроизвести точно такое же поведение, что и исходный код, используя
public static boolean areBooleansValid(Map<String, Object> pairs,
List<String> errors, String... values) {
Optional<String> opt = Arrays.stream(values)
.filter(s -> !(pairs.get(s) instanceof Boolean))
.findFirst();
opt .filter(s -> pairs.get(s) != null)
.ifPresent(value -> errors.add(value+" does not contain a valid boolean value"));
return !opt.isPresent();
}
Как и ваш исходный код, он просто ищет первый элемент, который не является Boolean
(может быть null
), но добавляет ошибку, только если значение не null
.