스트림 중간 연산 & 최종 연산 메서드 모음

이의준·2024년 6월 17일

Java

목록 보기
82/87

스트림의 연산

  • 스트림이 제공하는 기능 - 중간 연산과 최종 연산
    • 중간 연산
      • 연산결과가 스트림인 연산
      • 반복적으로 적용 가능
    • 최종 연산
      • 연산결과가 스트림이 아닌 연산
      • 단 한번만 적용가능(스트림의 요소를 소모)
      • 최종 연산 후 스트림이 닫힘

중간 연산

메서드설명
Stream distinct()중복을 제거
Stream filter(Predicate predicate)조건에 안 맞는 요소 제거
Stream limit(long maxSize)스트림의 일부를 잘라낸다
Stream skip(long n)스트림의 일부를 건너뛴다
Stream peek(Consumer action)스트림의 요소에 작업수행
Stream sorted()스트림의 요소를 정렬한다
Stream sorted(Comparator comparator)스트림의 요소를 정렬한다
Stream map(Function<T,R/> mapper)스트림의 요소를 변환한다
DoubleStream mapToDouble(ToDoubleFunction mapper)스트림의 요소를 변환한다
IntStream mapToInt(ToIntFunction mapper)스트림의 요소를 변환한다
LongStream mapToLong(ToLongFunction mapper)스트림의 요소를 변환한다
Stream flatMap(Function<T,Stream> mapper)스트림의 요소를 변환한다
DoubleStream flatMapToDouble(Function<T,DoubleStream/> mapper)스트림의 요소를 변환한다
IntStream flatMapToInt(Function<T,IntStream/> mapper)스트림의 요소를 변환한다
LongStream flatMapToLong(Function<T,LongStream/> mapper)스트림의 요소를 변환한다

최종 연산

메서드설명
void forEach(Consumer<? super T> action)각 요소에 지정된 작업 수행
void forEachOrdered(Consumer<? super T> action)
long count()스트림의 요소의 개수 반환
Optional max(Comparator<? super T> comparator)스트림의 최대값/최소값을 반환
Optional min(Comparator<? super T> comparator)
Optional findAny()스트림의 요소 하나를 반환
Optional findFirst()
boolean allMatch(Predicate p)주어진 조건을 모든 요소가 만족시키는지, 만족시키지 않는지 확인
boolean anyMatch(Predicate p)
boolean noneMatch(Predicate p)
Object[] toArray()스트림의 모든 요소를 배열로 반환
A[] toArray(IntFunction<A[]> generator)
Optional reduce(BinaryOperator accumulator)스트림의 요소를 하나씩 줄여가면서(리듀싱) 계산한다
T reduce(T identity, BinaryOperator accumulator)
U reduce(U identity, BiFunction<U,T,U> accumulator, BinaryOperator combiner)
R collect(Collector<T,A,R> collector)스트림의 요소를 수집한다. 주로 요소를 그룹화하거나 분할한 결과를 컬렉션에 담아 반환하는데 사용된다.
R collect(Supplier supplier, BiConsumer<R,T> accumulator, BiConsumer<R,R> combiner)


0개의 댓글