java8之list集合中取出某一属性的方法

上代码

List<User> list = new ArrayList<User>();
        User user1 = new User("第一位","用户1");
        list.add(user1);
        User user2 = new User("第二位","用户2");
        list.add(user2);
        User user3 = new User("第三位","用户3");
        list.add(user3);
        List<String> tableNames=list.stream().map(User::getMessage).collect(Collectors.toList());
        System.out.println("输出第一个:"+tableNames);
        List<String> orders=list.stream().map(User::getOrder).collect(Collectors.toList());
        System.out.println(orders)

结果

输出第一个:[用户1, 用户2, 用户3]
[第一位, 第二位, 第三位]


将对应的属性都提取出来了,第一个是全部message的值,第二个是order的

public class User {
     String order;
     String message;
     
     public User(String order, String message) {
        this.order = order;
        this.message = message;
    }
    public String getOrder() {
        return order;
    }
    public void setOrder(String order) {
        this.order = order;
    }
    public String getMessage() {
        return message;
    }
    public void setMessage(String message) {
        this.message = message;
    }
    
}

注意:从list集合中取出某个属性时,先要判断是否为null,如果为null会报空指针异常。

原文地址:https://www.cnblogs.com/huanghuanghui/p/9253079.html