Stream은 자바8이 릴리즈 되면서 추가된 자바의 핵심 기능 중 하나입니다.

여기서 더 나아가 Parallel Stream이란 기술을 통해 성능 향상을 기대해볼 수 있습니다.

우리는 이를 통해 성능을 향상 시키길 원하는데, 이걸 언제 적용할 수 있는 지에 대해 알아보고자 합니다.


Stream이란?

Stream은 한국어 뜻으로 개울, 흐름을 의미합니다.

자바 프로그래밍에서 Stream을 사용한 이유는 데이터의 흐름으로 의미가 전달되길 바라는 의도를 알 수 있습니다.

즉, Java에서 Stream은 데이터의 흐름이라고 볼 수 있습니다.

int[] arr = [1, 2, 3, 4];

위 코드를 보면 arr 배열에 1과 2, 3, 4 라는 네 개의 int 값을 가진 것을 확인할 수 있습니다.

이를 스트림으로 표현하면

(1데이터) (2데이터) (3데이터) (4데이터) 가 흐르는 모양새를 갖도록 한다 생각하면 됩니다.

이제 본론으로 Parallel Stream

이란 개념을 적용해봅시다.