티스토리 뷰

서론

java stream의 reduce를 사용하는 방법을 소개합니다.

본론

reduce

reduce에서는 identity와 lambda expression 두 가지를 매개변수로 받아 작업을 수행합니다.

identity는 계산을 수행하기 전 초기 값으로 각 계산의 결과가 입력으로 재사용됩니다.
lambda expression에서는 identity와 stream의 값을 받을 수 있는 매개변수가 2개인 람다식을 작성하면 됩니다.


someList.stream().reduce(<identity>, <lambda operation>)

사용 예시


int[] nums = {1, 2, 3, 4, 5, 6, 7}

// nums 배열의 모든 값들의 곱을 구하는 방법
return Arrays.steram(nums).reduce(1, (total, num) -> (total * num));

// nums 배열의 모든 값들의 합을 구하는 방법 (미리 정의된 람다식)
return Arrays.stream(nums).reduce(0, Integer::sum);

결론

stream에 대해서 많이 공부하면 그만큼 코딩하는 길이를 줄이고 가독성을 높일 수 있습니다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/04   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30
글 보관함