まず、以下のようなArrayListがあるとします。
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<>();
numbers.add(1);
numbers.add(2);
numbers.add(3);
numbers.add(4);
numbers.add(5);
numbers.add(6);
numbers.add(7);
numbers.add(8);
numbers.add(9);
numbers.add(10);
}
}
このArrayListから偶数を見つけるために、Java 8のStream APIを使用します。次のようにコードを書きます。
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<>();
numbers.add(1);
numbers.add(2);
numbers.add(3);
numbers.add(4);
numbers.add(5);
numbers.add(6);
numbers.add(7);
numbers.add(8);
numbers.add(9);
numbers.add(10);
int sum = numbers.stream()
.filter(number -> number % 2 == 0) // 偶数のみフィルタリング
.mapToInt(Integer::intValue) // int型に変換
.sum(); // 合計を求める
System.out.println("合計: " + sum);
}
}
上記のコードでは、numbers
リストをStreamに変換し、filter
を使用して偶数の要素のみをフィルタリングしています。次に、mapToInt
を使用して要素をint型に変換し、最後にsum
を呼び出して合計値を計算しています。
実行結果は以下のようになります。
合計: 30
以上が、Java 8 Stream APIを使用してArrayListから偶数を見つけ、その合計を求める方法です。