所谓filter()操作,就是对一个Stream的所有元素一一进行测试,不满足条件的就被“滤掉”了,剩下的满足条件的元素就构成了一个新的Stream。
要注意是过滤不满足条件的元素

    public static void main(String[] args) {
        List<String> slist = new ArrayList<>();
        slist.add("你好1");
        slist.add("你好2");
        slist.add("你好3");
        slist.add("你好4");
        slist.add("你好5");
        slist.add("你好6");
        slist.add("你好7");
        slist.add("你好8");
        boolean flag = true;
        while(flag){
            for (String s : slist) {
                System.out.println(s);
                slist = slist.stream().filter(e -> !s.equals(e)).collect(Collectors.toList());
            }
           if(slist.size()<1){
               flag=false;
           }
        }
    }

上一篇 下一篇