Стиль Java Lambda

Итак, это не сработает, поскольку seatAvailable является окончательным. Как то, что я пытаюсь выполнить, можно сделать, используя более простой метод лямбда-стиля?

final boolean seatsAvailable = false;
theatreSeats.forEach(seat -> {
    if (!seatsAvailable) seatsAvailable = seat.isEmpty();
});

Вы всегда можете просто использовать цикл for. Стримы здесь ничего не дадут.

Andy Turner 26.10.2018 20:48
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
4
1
132
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Похоже, вы хотите, чтобы seatsAvailable был true, если есть хотя бы одно свободное место. Следовательно, это должно помочь вам:

final boolean seatsAvailable = theatreSeats.stream().anyMatch(Seat::isEmpty);

(Примечание: я предполагаю, что ваш класс называется Seat.)

Другие вопросы по теме