스트림의 최종 연산
- 스트림의 모든 요소에 지정된 작업을 수행 : forEach(), forEachOrdered()
- 스트림 요소의 조건 검사 : allMatch(), anyMatch(), noneMatch()
- 조건에 일치하는 요소 찾기 : findFirst(), findAny()
- 스트림의 요소를 하나씩 줄여가며 누적연산 수행 : reduce()
< 예제 >
collect()와 Collectors
- collect() : Collectors를 매개변수로 하는 스트림의 최종 연산
- 그룹별 리듀싱
- Collector : 수집에 필요한 메서드를 정의해 놓은 인터페이스
- Collectors : 다양한 기능의 컬렉터(Collector를 구현하는 클래스)를 제공하는 클래스
스트림을 컬렉션, 배열로 변환
- 스트림을 컬렉션으로 변환 : toList(), toSet(), toMap(), toCollection()
- 스트림을 배열로 변환 : toArray()
- 스트림의 통계정보 제공 : counting(), summingInt(), maxBy(), minBy(), ...
- 스트림을 리듀싱 : reducing()
- 문자열 스트림의 요소를 모두 연결 : joining()
스트림의 그룹화와 분할 - partitioningBy()
(Collectors의 메서드)
- partitioningBy() : 스트림을 2분할 함
< 예제 >
스트림의 그룹화와 분할 - groupingBy()
(Collectors의 메서드)
- groupingBy() : 스트림을 n분할 함
< 예제 >