JavaでのPredicateの使い方は何ですか?
Javaにおいて、Predicateは、1つの入力パラメーターを受け取り、真偽値を返す関数型インターフェースです。通常、コレクション内の要素をフィルタリングしたり、選択したりするために使用されます。Predicateインターフェースには、条件を定義する抽象メソッドtestが含まれています。Predicateインターフェースの実装を使用して、異なるフィルタリング条件を定義し、testメソッドを呼び出して入力パラメーターが条件を満たすかどうかを判断できます。
整数リストから偶数要素をフィルタリングするためには、Predicateを使用できます。
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
Predicate<Integer> isEven = num -> num % 2 == 0;
List<Integer> evenNumbers = numbers.stream()
.filter(isEven)
.collect(Collectors.toList());
System.out.println(evenNumbers); // 输出 [2, 4, 6, 8, 10]
上記の例では、整数が偶数であるかどうかを判定するisEvenというPredicate実装を定義し、filterメソッドを使用してリストから偶数の要素を選択して新しいリストに集めました。これにより、コレクション内の要素をフィルタリングする操作が実現されました。Predicateインターフェースには、複雑なフィルタ条件を実装するための便利なメソッドが提供されており、さまざまなシナリオで柔軟に活用することができます。