Stream API (anyMatch(), allMatch(), noneMatch())

102
16 октября 2021, 15:40

Unlike the anyMatch( ) method that returns false when the stream is empty, the allMatch( ) and noneMatch( ) methods return true if the stream is empty!

Вопрос: Почему в одном случае при пустом стриме возвращается false а в остальных случаях true?

Просьба: Помочь понять логику, почему все именно так а не иначе.

Answer 1

anyMatch() не находит в пустом множестве "любой" элемент, удовлетворяющий заданному условию, отчего и возвращает false. Тут вроде всё понятно.

noneMatch() возвращает истину, так как ни один элемент в пустом множестве не может соответствовать условию. Тут тоже всё ясно.

А вот насчёт allMatch() всё не так очевидно).
Тут надо знать о таком утверждении в логике, как "бессодержательная истина", которая утверждает, что все элементы пустого множества соответствуют условию. Ведь вы не можете указать тот элемент, который не соответствует.

READ ALSO
Проблема работы selenide с таймером

Проблема работы selenide с таймером

моя программа обновляет постоянно страницу в инстаграмме, через таймер, вот код:

301
После переустановки приложения я не получаю купленный товар ! Что не так?

После переустановки приложения я не получаю купленный товар ! Что не так?

Перешел из комментариев сюдаВы забыли очень важный момент

197
Будет ли переполнение double при

Будет ли переполнение double при

Есть переменная типа doubleКаждый раз её увеличивают на 0

202
PhpMyAdmin. Вопросы вместо русских букв

PhpMyAdmin. Вопросы вместо русских букв

У меня в phpMyAdmin вместо русских букв в таблице отображаются знаки вопросаЯ понимаю, что это проблемы с кодировкой, но не могу перекодировать...

284