java8 stream:检查list集合中是否存在某个值

原文地址:https://www.cnblogs.com/shihaiming/p/11699785.html

目录

    import java.util.ArrayList;
    import java.util.List;
    import java.util.stream.Collectors;
    
    public class Test {
        public static void main(String[] args) {
            People p1 = new People("b", "b");
            People p2 = new People("a", "b11");
            List<People> list = new ArrayList<>();
            list.add(p1);
            list.add(p2);
            
            boolean bool = list.stream().anyMatch(a -> a.getName().equals("a") || a.getNick().equals("a"));
            System.out.println(bool);
            
            List<People> data = list.stream().filter(a -> a.getName().equals("a") || a.getNick().equals("a")).collect(Collectors.toList());
            
            if(data != null && data.size() > 0) {
                for(int i=0; i<data.size(); i++) {
                    System.out.println(data.get(i).getName() + "---" + data.get(i).getNick());
                }
            }
        }
    }
    
    public class People {
        private String name;
        private String nick;
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public String getNick() {
            return nick;
        }
        public void setNick(String nick) {
            this.nick = nick;
        }
        public People(String name, String nick) {
            super();
            this.name = name;
            this.nick = nick;
        }
    }
    
    posted @ 2020-04-14 08:30  aplsnb  阅读(39481)  评论(3)    收藏  举报