본문 바로가기

하../java

ch14 스트림의 연산

스트림의 연산

- 스트림이 제공하는 기능 - 중간 연산(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