연산종류
- 중간연산 : 연산결과가 스트림
- 최종연산 : 연산결과가 스트림이 아닌 연산
1. 중간연산
- filter(조건) : 조건
- distinct : 중복 제거
- map : 요소 변환
- limit : 자르기(앞에서 부터)
- skip(long n) : 건너뛰기 (skip(3) : 0,1,2 건너뛰고 3번째부터 끝까지)
- sorted : 정렬
- peek : 작업 수행 <-> forEach
1-1) filter
1-2) limit, skip
1-3) sorted
- Comparator.comparing(정렬기준)
- thenComparing : 여러 정렬기준이 있을때
1-4) map : 변환
1-5) peek : forEach와 다르게 스트림을 소비하지 않음
2. 최종연산
- 핵심 2가지
1. reduce : 요소를 하나씩 줄여가면서 계산한다.
2. collect : 요소를 수집한다
- allMatch, anyMatch, noneMatch(조건)
- forEach : 각 요소 작업 수행
- count, max, min
- findFirst : 요소 반환
- fintAny : 요소 반환
- toArray : 배열로 변환
1. reduce : 리듀싱
2. collect, Collectors : 그룹별 리듀싱
- collect : Collectors를 매개변수로 하는 스트림의 최종연산
- Collectors : toList, toSet, toMap, toCollection 등 기능 제공
'공부 > Java' 카테고리의 다른 글
테스트하기 좋은 메서드 만들기 (인터페이스 분리) (0) | 2022.03.14 |
---|---|
Optional<T> (0) | 2022.03.13 |
스트림(Stream) - 2 (스트림 만들기) (0) | 2022.03.13 |
추상화(추상클래스, 인터페이스) (0) | 2022.03.11 |
스트림(Stream) - 1 (0) | 2022.03.08 |
댓글