패스트캠퍼스 챌린지

패스트캠퍼스 챌린지 45일차

FIF 2022. 3. 9. 19:17
반응형

연산 수행에 대한 구현을 할 수 있는 reduce() 메서드

 

BinaryOperator

BinaryOperator는 같은 타입의 파라미터 2개를 받아 결과값을 리턴하는 functional interface다. 주로 람다와 메서드 참조를 위해 사용된다.

그냥 식을 적는 것보다 가독성이 좋기 때문에 적극 활용하는 것이 좋다.

또한, BiFunction을 상속하는 인터페이스로서, apply(T t, U u) 메서드를 호출해서 function을 적용한다.

 

IntBinaryOperator

IntBinaryOperator는 int 타입의 파라미터 2개를 받아 int 타입의 결과값을 리턴한다.

이름에서 알 수 있듯이 BinaryOperator를 상속하며, applyAsInt(int left, int right)는

내부적으로 BiFunction의 apply(T t, U u)를 호출한다.

 

reduce()

우선, reduce()는 스트림의 원소들을 하나씩 소모해가며, 누적 계산을 수행하고 결과값을 리턴하는 메서드다.

reduce()는 파라미터를 3개 받을 수 있다.

T identity: 계산에 적용할 초깃값으로, 스트림이 비어 있더라도 초깃값을 반환

BinaryOperator<T> accumulator: 적용할 계산 함수

BinaryOperator<U> combiner: 병렬 스트림에서 각 쓰레드 계산 결과를 합치는 함수

 

 

 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

https://bit.ly/37BpXiC

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr



반응형