微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用流式编程将集合转换成另一种对象集合

将集合转成另一种对象集合,过去是for循环遍历一次,现在改成流式写法
我觉得好处就是少写了5行代码,然后去补习其他更重要的内容
过去的写法:

static class A {
        Long id;

        public A() {
        }

        public Long getId() {
            return id;
        }

        public void setId(Long id) {
            this.id = id;
        }
    }
    static class B {
        Long id;

        public B() {
        }

        public B(A a) {
            this.id = a.id;
        }

        public Long getId() {
            return id;
        }

        public void setId(Long id) {
            this.id = id;
        }
    }
    public static void main(String[] args) {
        // List<A> 转 List<B>
        // 不使用lambda
        List<A> as = Lists.newArrayList();
        for(int i=0;i<3;i++){
            // 创建一个对象
            A a= new A();
            // 给对象中属性赋值
            a.setId((long) i);
            // 将对象引用放进集合中
            as.add(a);
        }
        // 将集合转成另一种类型的对象集合
        List<B> bs = Lists.newArrayList();
        for(int j=0;j<3;j++){
            // 创建一个对象
            B b = new B();
            // 获取一个对象 将对象中属性获取 赋值给新的对象
            b.setId(as.get(j).getId());
            // 将新的对象引用放进集合中
            bs.add(b);
        }
        
    }

流式编程:

bs = as.stream().map(B::new).collect(Collectors.toList());

原文地址:https://www.jb51.cc/wenti/3282878.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐