티스토리 뷰

책 스터디/모던 자바 인 액션

4.스트림

이브마드 2024. 7. 10. 23:07

1.스트림 : 데이터 처리 연산을 지원하도록 소스에서 추출된 연속된 요소
* 컬렉션의 주제는 데이터고, 스트림의 주제는 계산임
* 소스 : 소스와 같은 순서로 유지됨
* 데이터 처리 연산 : 일반적으로 지원하는 연산과 데이터 베이스와 비슷한 연산을 지원함

2.스트림의 특징
1. 파이프라이닝
2. 내부반복

3. 스트림과 컬렉션의 차이
- 데이터를 언제 계산하느냐가 가장 큰 차이
컬렉션 : 적극적 생성 : 모든 값을 계산할 때까지 기다림, 현재 자료구조에 포함된 모든 값을 계산한 다음 컬렉션에 추가
스트림 : 게으른 생성 : 필요할 때만 값을 계산한다는 의미, 사용자가 요청하는 값만 스트림에서 추출하며 생산자와 소비자 관계를 형성하는 것이 특징임!

컬렉션 인터페이스를 사용하려면 외부반복을 통해 사용해야함

스트림 또한 한번만 탐색할 수 있고, 탐색된 스트림은 소비된다.

스트림의 경우 내부반복을 이용해 (즉, 반복자를 명시해줄 필요가 없음) 반복할 수 있음

4. 스트림 연산
연결할 수 있는 스트림 연산을 중간연산, 스트림을 닫는 연산을 최종 연산이라고 함.
중간연산은 다른 스트림을 변환함, 여러 중간 연산을 연결하여 질의를 만들 수 있음
forEach/ count/ collect를 제외한 연산은 중간연산

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함