🦔
Stream APIを使ってArray配列の合計を計算する(Java)
概要
Java で for 文を使わずに Array 配列の合計を求める方法をまとめました。
すべてのパターンで 1~5 の合計を求めます。
for 文の場合
List<Integer> integerList = Arrays.asList(1, 2, 3, 4, 5);
int sum = 0;
for (int i = 0; i<integerList.size(); i++){
sum += integerList.get(i);
}
System.out.println(sum);
Stream API の場合
reduce を使う場合
非メソッド参照
List<Integer> integerList = Arrays.asList(1, 2, 3, 4, 5);
int sum = 0;
sum = integerList.stream().reduce(0, (a, b) -> a+b);
System.out.println(sum);
メソッド参照
List<Integer> integerList = Arrays.asList(1, 2, 3, 4, 5);
int sum = 0;
sum = integerList.stream().reduce(0, Integer::sum);
System.out.println(sum);
collect を使う場合
List<Integer> integerList = Arrays.asList(1, 2, 3, 4, 5);
int sum = 0;
sum = integerList.stream().collect(Collectors.summingInt(Integer::intValue));
System.out.println(sum);
IntStream を使う場合
非メソッド参照
List<Integer> integerList = Arrays.asList(1, 2, 3, 4, 5);
int sum = 0;
sum = integerList.stream().mapToInt(intValue -> intValue).sum();
System.out.println(sum);
メソッド参照
List<Integer> integerList = Arrays.asList(1, 2, 3, 4, 5);
int sum = 0;
sum = integerList.stream().mapToInt(Integer::intValue).sum();
System.out.println(sum);
Discussion