[Java] 스트림 Reduce 메서드의 내부 로직에 관하여
2023. 9. 20.
스트림은 sum(), count() 같은 기본 집계 메서드 이외에도, 다양한 결과물을 출력해 낼 수 있도록 reduce() 메서드도 제공하고 있다. reduce() 메서드의 리턴 타입과 매개변수는 아래와 같다. // 초기 값이 없는 버전 Optional reduce(BinaryOperator accumulator) // 초기값 identity가 있는 버전 T reduce(T identity, BinaryOperator accumulator) // 리턴 타입이 int, long, double인 reduce() 메서드도 존재 ... 초기 값이 없는 reduce() 메서드는 스트림에 요소가 존재하지 않을 경우 'NoSuchElementException'이라는 예외가 발생하지만, 초기값 identity를 매개값..