문제:
Java 8을 사용하여 Iterable을 어떻게 조작할 수 있습니까? API로 변환하지 않고 스트림 API 목록?
해결책:
tl;dr: StreamSupport.stream(iterable.spliterator(), false)을 사용하여 다음에서 스트림을 생성합니다. iterable.
상세 설명:
Iterable은 StreamSupport.stream을 사용하여 스트림을 생성하는 데 사용할 수 있는 Spliterator를 반환하는 Spliterator() 메서드를 제공합니다. 코드 조각은 다음과 같습니다.
StreamSupport.stream(iterable.spliterator(), false) .filter(...) .moreStreamOps(...);
이 접근 방식은 불필요한 목록 변환을 방지하여 성능과 메모리 소비를 향상시킬 수 있습니다. StreamSupport.stream은 두 가지 인수를 사용합니다.
결과 스트림은 필터, 맵, 등
이점:
StreamSupport.stream을 사용하면 다음과 같은 이점이 있습니다.
위 내용은 목록을 사용하지 않고 Iterable을 Java 8 스트림으로 변환하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!