결과에 부울을 반환하려고합니다.Java 스트림을 사용하여 부울을 반환하는 방법
public boolean status(List<String> myArray) {
boolean statusOk = false;
myArray.stream().forEach(item -> {
helpFunction(item).map (x -> {
statusOk = x.status(); // x.status() returns a boolean
if (x.status()) {
return true;
}
return false;
});
});
}
람다 식에 사용되는 불평하는 변수는 최종적이거나 효과적이어야합니다. statusOk를 할당하면 루프 내부에 할당 할 수 없습니다. 어떻게하면 stream() 및 map()을 사용하여 부울 변수를 반환 할 수 있습니까? 당신이 잘못 스트림을 사용하는
람다를 사용하는 포인트는 여기에 무엇이다 :
당신은
anyMatch
이 로직을 구현 할 수 있습니까? 그리고 왜 map 대신에'map()'을 쓰겠습니까? 'anyMatch()'? –그런 상황에서 lambdas를 사용하는 방법에 대해이 질문을보십시오 : https://stackoverflow.com/questions/32268784/java8-effectively-final-compile-time-error-on-ninal-final-variable. 가능한 중복. – tkruse
그런데 내부 람다를'x :: status' 또는 적절한 표기법이 무엇이든지 만드는 것이 잘못된 것입니까? –