所谓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;
}
}
}