У меня есть существующий код и я ищу, чтобы преобразовать в потоки, предоставляемые Java8:Изучение Java 8 потоков
for(Person details: modList){
if (null != details &&null!=details.getPersonChild()) {
Child mod= details.getPersonChild();
if (mod.isAB() ||
mod.isBC() ||
mod.isCD() ||
mod.idDE() ||
mod.isEF()) {
childeligible = true;
break;
}
}
}
я до сих пор сделано:
return details.stream()
.filter(p -> null != p && null != p.getPersonChild())
.map(Person::getPersonChild)
.anyMatch(mi -> (mod.isAB() || mod.isBC() || mod.isCD() || mod.idDE() || mod.isEF()));
есть более оптимизированный способ для достижения этой цели
Спасибо за помощь
Выглядит хорошо для меня. Зачем вам проверять 'getName', но искать' getPersonChild', почему бы не проверить, является ли это 'null' вместо этого? –
Можете ли вы добавить метод isABCDEF()? –
да извините, мой плохой ... null check был для PersonChild – Hali