Java stream接口操作 count,anyMatch,allMatch,noneMatch


Java中 countanyMatchallMatchnoneMatch函数的定义:

    long count();  
  
    boolean anyMatch(Predicate<? super T> predicate);  
  
    boolean allMatch(Predicate<? super T> predicate);  
  
    boolean noneMatch(Predicate<? super T> predicate);

count方法,跟List接口的size一样,返回的都是这个集合流的元素的长度,不同的是,流是集合的一个高级工厂,中间操作是工厂里的每一道工序,我们对这个流操作完成后,可以进行元素的数量的和。

anyMatch表示,判断的条件里,任意一个元素成功,返回true。

allMatch表示,判断条件里的元素,所有的都是,返回true。

noneMatch跟allMatch相反,判断条件里的元素,所有的都不是,返回true。

例子:

        List<String> strs = Arrays.asList("a", "a", "a", "a", "b");
        boolean aa = strs.stream().anyMatch(str -> str.equals("a"));
        boolean bb = strs.stream().allMatch(str -> str.equals("a"));
        boolean cc = strs.stream().noneMatch(str -> str.equals("a"));
        long count = strs.stream().filter(str -> str.equals("a")).count();
        System.out.println(aa);// TRUE
        System.out.println(bb);// FALSE
        System.out.println(cc);// FALSE
        System.out.println(count);// 4

相关阅读 >>

Java判断一个字符串是否为纯数字

接口和抽象类的区别是什么?

Java:阐述servlet和cgi的区别?

Java 中自动装箱与拆箱

Java 中获取用键盘输入常用的两种方法

Java 获取当前时间的年月日时分秒

Java连接elasticsearch查询时间范围报错:elasticsearch exception [type=search_phase_execution_exception......

Java 动态代理详解

Java 和 c++ 的区别 ?

为什么 Java 不支持运算符重载?

更多相关阅读请进入《Java》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...