프로그래밍 노트/JAVA

[JAVA] Collectors 클래스 정적 팩토리 메서드

깡냉쓰 2021. 9. 26. 17:24
728x90
반응형

Collectors 클래스에 존재하는 정적 팩토리 메서드
(https://docs.oracle.com/javase/8/docs/api/java/util/stream/Collectors.html)

팩토리 메서드 반환 형식 비고
toList List<T> 스트림 항목을 리스트로 수집
toSet Set<T> 스트림 항목을 집합으로 수집
toCollection Collection<T> 스트림의 모든 항목을 발행자가 제공하는 컬렉션으로 수집
counting Long 스트림 항목 수 계산
summingInt Integer 스트림 항목의 정수 프로퍼티 값 더함
averagingInt Double 스트림 항목의 정수 프로퍼티 평균값 계산
summarizingInt IntSummaryStatistics 최댓값, 최솟값, 합계, 평균 등의 정수 정보 통계 수집
joining String 스트림 각 항목에 toString 메서드를 호출한 결과 문자열 연결
maxBy Optional<T> 최댓값 요소를 Optaionl로 감싼 값으로 반환. 요소가 없을때는 Optional.empty()반환
minBy Optional<T> 최소값 요소를 Optaionl로 감싼 값으로 반환. 요소가 없을때는 Optional.empty()반환
reducing produced by the reduction operation 누적자(accumulator)를 초깃값으로 설정한 다음에 BinaryOperator로 스트림의 각 요소를 반복적으로 누적자와 합쳐 스트림을 하나의 값으로 리듀싱
collectingAndThen returned by transforming function 다른 컬렉터를 감싸고 그 결과에 변환 함수 적용
groupingBy Map<K, List<T>> 하나의 프로퍼티값을 기준으로 스트림의 항목을 그룹화하여 기준 프로퍼티값을 키로 사용
partitionBy Map<Boolean, List<T>> Predicate를 스트림의 각 항목에 적용한 결과로 항목 분할
728x90
반응형