본문 바로가기
정리/Java

Java - 스트림(Stream)과 컬렉션

by 난파선 2017. 3. 3.


스트림과 컬렉션

데이터를 언제 계산하느냐가 컬렉션과 스트림의 가장 큰 차이

컬렉션은 현재 자료구조가 포함하는 모든 값을 메모리에 저장하는 자료구조다. 즉, 컬렉션의 모든 요소는 컬렉션에 추가하기 전에 계산되어야 한다. 요소의 추가, 삭제가 가능

반면 스트림은 이론적으로 요청할 때만 요소를 계산하는 고정된 자료구조다.
스트림은 한번만 탐색할 수 있다.

특징 정리

  1. 읽기만 가능하고 기존 데이터를 변경하지 않는 다.
  2. 일회용이다. 최종연산 후 다시 값을 받으려면 스트림을 다시 생성해야 한다.
  3. 최종연산이 나오기 전까지 연산이 수행되지 않는 다. 지연연산
  4. 내부 반복으로 처리한다.
  5. 병렬로 처리한다.

댓글