woowacourse-study / 2022-modern-java-in-action

우아한테크코스 4기 모던 자바 인 액션 스터디
10 stars 4 forks source link

스트림 파이프라인은 무엇일까? #37

Open jaejae-yoo opened 2 years ago

jaejae-yoo commented 2 years ago

문제

스트림 파이프라인은 무엇일까?

선정 배경

책에서 스트림의 주요 특징 중 한 가지로 파이프라이닝을 들고 있다. 파이프라인은 어떤 구조로 이루어져 있고, 특징은 무엇일까?

관련 챕터

[4장] 스트림 소개

jaejae-yoo commented 2 years ago

중간 처리

최종처리

파이프라인 형성 과정 요약

  1. 중간처리 메서드는 중간처리 된 스트림을 리턴한다.
  2. 이 스트림에서 다시 중간처리 메소드를 호출해서 파이프 라인을 형성한다.
    • 최종 스트림이 시작하면 그때서야 컬렉션에서 요소가 하나씩 중간 스트림에서 처리된다.

스트림 파이프라인의 장점 중간 연산은 반환 값으로 스트림을 반환한다. 따라서 여러 중간 연산을 연결해서 질의를 만들 수 있다. 중간 연산을 합치고, 합쳐진 중간 연산을 최종 연산으로 한 번에 처리한다. 중간 연산의 중요한 특징은 단말 연산을 스트림 파이프라인에 실행하기 전까지는 아무 연산도 수행하지 않는다는 것, 즉 lazy라는 것이다.