Java 8 스트림 forEach에서 중단 또는 반환
향상된 for-each 루프를 사용하는 외부 반복과 마찬가지로 Java 8 람다 표현식을 사용한 내부 반복에는 다음이 필요합니다. 파손 또는 반품에 대한 다른 접근 방식. for-each 루프에서 벗어나려면 break 문을 사용하거나 현재 객체를 반환하면 됩니다.
스트림 forEach의 경우 break나 return을 모두 사용할 수 없습니다. 그 이유는 forEach가 터미널 작업이기 때문입니다. 즉, 각 요소에 부작용을 실행하고 어떤 값도 반환하지 않습니다.
Stream forEach에서 중단 또는 반환을 위한 대안
대신, 다른 기능을 제공하는 다른 스트림 메소드 사용을 고려해야 합니다.
예제 코드
filter()를 사용하여 첫 번째 요소 찾기 조건을 충족하는 요소:
<code class="java">Optional<SomeObject> result = someObjects.stream().filter(obj -> some_condition_met).findFirst();</code>
anyMatch()를 사용하여 요소가 조건자를 충족하는지 확인:
<code class="java">boolean result = someObjects.stream().anyMatch(obj -> some_condition_met);</code>
위 내용은 EachLike 반복을 위해 Java 8 스트림에서 중단하거나 반환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!