Java8のBiPredicateインタフェースを理解する

Java8のBiPredicateインタフェースを理解する

java.util.function.BiPredicateインタフェースは関数型インタフェースと呼ばれるインタフェースで、testメソッドを持っています。

引数を2つ持ち、戻り値はbooleanです。

import java.util.function.BiPredicate;

public class Sample {
  public static void main(String[] args) {
    final BiPredicate<Integer, Integer> biPredicate = (e1, e2) -> e1 == e2;
    final boolean result = biPredicate.test(1, 2);
    System.out.println(result); // false
  }
}

メソッドチェーンのandメソッド

BiPredicateの関数.and(BiPredicateの関数).test()というようにandでメソッドチェーンして、論理積を求めることが出来ます。

両方とも戻り値がtrueならtrue、片方でもfalseならfalseとなります。

import java.util.function.BiPredicate;

public class Sample {
  public static void main(String[] args) {
    final BiPredicate<Integer, Integer> biPredicate1 = (e1, e2) -> e1 == e2;
    final BiPredicate<Integer, Integer> biPredicate2 = (e1, e2) -> e1 >= e2;
    final boolean result = biPredicate1.and(biPredicate2).test(1, 2);
    System.out.println(result); // false
  }
}

コメント

タイトルとURLをコピーしました