"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 목록을 사용하지 않고 반복 가능한 것을 Java 8 스트림으로 어떻게 변환 할 수 있습니까?

목록을 사용하지 않고 반복 가능한 것을 Java 8 스트림으로 어떻게 변환 할 수 있습니까?

2025-03-22에 게시되었습니다
검색:922

How Can I Convert an Iterable to a Java 8 Stream Without Using a List?

java 8 jdk

에서 a a로 변환하지 않고 반복 할 수있는 방법을 어떻게 조작 할 수 있습니까? List?

솔루션 :

tl; dr :

reamsupport.stream (iterable.spliterator (), false)를 사용하여 retable에서 스트림을 생성합니다.

StreamSupport.stream(iterable.spliterator(), false)
    .filter(...)
    .moreStreamOps(...);

설명 :
  • iterable은 spliterator를 반환하는 spliterator () 메소드를 제공합니다.이 방법은 spliterator를 반환합니다. 코드 스 니펫은 다음과 같습니다.
  • streamSupport.stream (iterable.spliterator (), false) .필터(...) .morestreamops (...);

이 접근법은 성능과 메모리 소비를 향상시킬 수있는 목록으로의 불필요한 변환을 피합니다. StreamSupport.stream :

iterable.spliterator () : 반복적으로 얻은 스플릿터

false : 반복 가능한 크기가 알려지지 않도록 지정합니다. ETC.

  • 혜택 :
  • StreamSupport.stream을 사용하여 다음과 같은 혜택을 제공합니다. 스플 라이트 레이터 및 스트림 성능, 특히 반복 가능이 이미 컬렉션 인 경우.
  • 메모리 저장 :
  • 는 목록으로의 불필요한 변환을 피하고 메모리 오버 헤드를 줄이지 않습니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3