当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Java.util.function.IntPredicate用法及代码示例


IntPredicate接口被引入JDK 8。该接口封装在java.util.function包。它对整数值进行操作并根据条件返回谓词值。它是一个函数接口因此可以用于拉姆达表达式还。

public interface IntPredicate

方法:

  1. test():此函数对 int 值进行条件检查,并返回一个表示结果的布尔值。
boolean test(int value)

2.and():此函数对当前对象和作为参数接收的对象进行 AND 运算,并返回新形成的谓词。该方法有一个默认实现。

default IntPredicate and(IntPredicate other)

3. negate():该函数返回当前谓词的逆,即反转测试条件。该方法有一个默认实现。

default IntPredicate negate()

4. or():该函数对当前对象和作为参数接收的对象进行 OR 运算,并返回新形成的谓词。该方法有一个默认实现。

default IntPredicate or(IntPredicate other)

例子:

Java


// Java example to demonstrate IntPredicate interface
import java.util.function.IntPredicate;
public class IntPredicateDemo {
    public static void main(String[] args)
    {
        // Predicate to check a value is less than 544331
        IntPredicate intPredicate = (x) ->
        {
            if (x <= 544331)
                return true;
            return false;
        };
        System.out.println("544331 is less than 544331 "
                           + intPredicate.test(544331));
        // Predicate to check a value is equal to 544331
        IntPredicate predicate = (x) ->
        {
            if (x == 544331)
                return true;
            return false;
        };
        System.out.println("544331 is equal to 544331 "
                           + predicate.test(544331));
        // ORing the two predicates
        IntPredicate intPredicate1 = intPredicate.or(predicate);
        System.out.println("544331 is less than equal to 544331 "
                           + intPredicate1.test(544331));
        // ANDing the two predicates
        intPredicate1 = intPredicate.and(predicate);
        System.out.println("544331 is equal to 544331 "
                           + intPredicate1.test(544331));
        // Negating the predicate
        intPredicate1 = intPredicate.negate();
        System.out.println("544331 is greater than 544331 "
                           + intPredicate1.test(544331));
    }
}
输出:
544331 is less than 544331 true
544331 is equal to 544331 true
544331 is less than equal to 544331 true
544331 is equal to 544331 true
544331 is greater than 544331 false

参考: https://docs.oracle.com/javase/8/docs/api/java/util/function/IntPredicate.html



相关用法


注:本文由纯净天空筛选整理自CharchitKapoor大神的英文原创作品 Java.util.function.IntPredicate interface in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。