본문 바로가기
공부/Java

스트림(Stream) - 3 (스트림 연산)

by JERO__ 2022. 3. 13.

연산종류

- 중간연산 : 연산결과가 스트림

- 최종연산 : 연산결과가 스트림이 아닌 연산

 

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 등 기능 제공

 

댓글