Как упростить сложный фильтр потока опционовJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как упростить сложный фильтр потока опционов

Сообщение Anonymous »

Я новичок в необязательном в Java и хотел бы реализовать следующую логику. В противном случае я хочу, чтобы первый элемент соответствовал шаблону.*Ap.*. Если я все еще не получу элемент, я хочу первый элемент списка.List testList = Arrays.asList("banana", "apple", "cheese", "chocolate");

String food = testList.stream()
.filter(str -> str.equals("chocolate"))
.findFirst()
.orElseGet(() -> testList.stream()
.filter(str -> str.matches(".*ap.*"))
.findFirst()
.orElseGet(() -> testList.get(0)));


Подробнее здесь: https://stackoverflow.com/questions/797 ... als-stream
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»