У меня есть нижеприведенная кодовая база, которая используется для поиска любого подходящего объекта и сбоя его состояния. Какой самый простой способ реализации приведенного ниже кода
DummyCounter dummyCounter=new DummyCounter();
dummyCounter.setDue("DONE");
dummyCounter.setStatus(1);
DummyCounter dummyCounte1=new DummyCounter();
dummyCounte1.setDue("FAILRUE");
dummyCounte1.setStatus(1);
DummyCounter dummyCounte2=new DummyCounter();
dummyCounte2.setDue("DONE");
dummyCounte2.setStatus(1);
List<DummyCounter> counterList=new ArrayList<DummyCounter>();
counterList.add(dummyCounter);
counterList.add(dummyCounte2);
counterList.add(dummyCounte2);
Использование
final Integer integer = counterList.stream()
.filter(customer -> "DONE".equals(customer.getDue()))
.map(DummyCounter::getStatus)
.filter(Objects::nonNull)
.findAny()
.get();
System.out.println(integer);