알고리즘 문제나, 개발을 하다 보면 Stream에 정의된 연산을 자주 사용하게 됩니다. 그중 reduce를 사용하는 방법에 대해 알아보려 합니다. reduce는 스트림의 요소를 하나씩 줄여가며 계산하는 연산(reducing)입니다. reduce는 forEach와 같은 최종 연산으로, 스트림 생성 후 단 한 번만 연산 가능합니다. 참고 - 스트림의 중간 연산과 최종 연산? 더보기 중간 연산은 스트림을 반환합니다. 그렇기 때문에 연속해서 연산을 이어갈 수 있습니다. 중간 연산의 종류로, distinct(), filter(), sorted(), map() 등이 있습니다. 최종 연산은 스트림이 아닙니다. 최종 연산을 하게 되면 스트림이 소모가 되어 연산을 추가로 진행할 수 없습니다. 최종 연산의 종류는 forE..