「Java8」java.util.function.Predicateクラスのand()、or()メソッドを使うサンプル

説明
1.default Predicate<T> and(Predicate<? super T> other)
この述語と別の述語の短絡論理積を表す合成述語を返します。合成述語の評価時にこの述語がfalseだった場合、述語otherは評価されません。

2.default Predicate<T> or(Predicate<? super T> other)
この述語と別の述語の短絡論理和を表す合成述語を返します。合成述語の評価時にこの述語がtrueだった場合、述語otherは評価されません。
サンプルコード

package com.arkgame.study;

import java.util.function.Predicate;

public class PredicateDemo {

      public static Integer MAX = 15;

      public static void main(String[] args) {
            Predicate<Integer> cftA = n -> n > 5;
            Predicate<Integer> cftB = n -> n < 25;

            boolean resFlg = cftA.and(cftB).test(MAX);
            System.out.println("and()関数の結果: " + resFlg);

            boolean resFlgB = cftA.or(cftB).test(MAX);
            System.out.println("or()関数の結果: " + resFlgB);
      }

}

実行結果
and()関数の結果:true
or()関数の結果true

Java

Posted by arkgame