스트림의 연산
- 스트림이 제공하는 기능 - 중간 연산(n번가능)과 최종 연산(1번 가능)

| 중간 연산 | 설명 |
| Stream<T> distinct( ) | 중복을 제거 |
| Stream<T> filter(Predicate<T> predicate)(조건식) | 조건에 안맞는 요소를 제외 |
| Stream<T> limit(long maxsize)(자르기) | 스트림의 일부를 잘라낸다. |
| Stream<T> skip(long n)(건너 뛰기) | 스트림의 일부를 건너뛴다. |
| Stream<T> peek(Consumer<T> action)(중간결과 확인할때 자주사용 forEach와 비슷) | 스트림의 요소에 작업을 수행 |
| Stream<T> sorted(Comparator<T> comparator)(정렬기준) | 스트림의 요소를 정렬한다. |
| Stream<R> map(Function<T,R> mapper) IntStream mapToInt(ToIntFunction<T> mapper) |
스트림의 요소를 변환한다. |
| 최종 연산 | 설명 |
| void forEach(Consumer<? super T> action) void forEachOrdered(Consumer<? super T> action) (순서유지 병렬스트림) |
각 요소에 지정된 작업 수행 |
| long count( ) | 스트림의 요소의 개수 반환 |
| Optional<T> max(Comparator<? super T> comparator) Optional<T> min(Comparator<? super T> comparator) (정렬 기준) |
스트림의 최대값/최소값을 반환 |
| Optional<T> findAny( ) (아무거나 하나) (병렬) filter와 같이 사용 Optional<T> findFirst( ) (첫번째) |
스트림의 요소 하나를 반환 |
| boolean allMatch(Predicate<T> p)(모두 만족하는지) boolean anyMatch(Predicate<T> p)(하나라도 만족하는지) boolean noneMatch(Predicate<> p)(모두 만족하지 않는지) (전부 조건식임) |
주어진 조건에 대한 확인을 수행 |
| Object[] toArray( )(객체 배열로) A[] toArray(IntFunction<A[ ]> generator)(특정 타입의 객체배열) |
스트림의 모든 요소를 배열로 변환 |
| Optional<T> reduce(BinaryOperator<T> accumulator) | 스트림의 요소를 하나씩 줄여가면서 계산 |
| R collect(Collector<T,A,R> collector) | 스트임의 요소를 수집한다. 주로 요소를 그룹화하거나 분할한 결과를 컬렉션에 담아 반환하는데 사용 |
'하.. > java' 카테고리의 다른 글
| ch14 스트림의 중간연산2 (0) | 2021.12.26 |
|---|---|
| ch14 스트림의 중간연산 (0) | 2021.12.26 |
| ch14 스트림 만들기 (0) | 2021.12.26 |
| ch14 스트림 스트림의 특징 (0) | 2021.12.26 |
| ch14 Predicate의 결합 CF와 함수형 인터페이스 (0) | 2021.12.26 |