其他分享
首页 > 其他分享> > 不同实体的List相互间赋值

不同实体的List相互间赋值

作者:互联网

List赋值

​ 入参、出参和持久对象的字段可能不同,需要我们进行转换,单个对象转换可以通过set方法进行字段赋值,那使用List来存储对象时,赋值方式有哪些呢?


  1. 循环赋值

    //List一共有四种循环方式,所以循环赋值也有四种,此处仅以for循环为例
    List<A> list1 = new ArrayList<>();
    List<B> list2 = new ArrayList<>();
    for (int i = 0; i < list1.size(); i++) {
        A a = list1.get(i);
        B b = new B();
        b.setxx(a.getxx());
        ...
        list2.add(b)
    }
    
  2. Stream的map处理list

    //stream流的方法功能有很多,此处仅将其作为循环遍历使用
    List<A> list1 = new ArrayList<>();
    List<B> list2 = new ArrayList<>();
    list2 = list1.stream().map(a -> {
        B b = new B();
        b.setxx(a.getxx());
        ...
        return B;
    }).collect(Collectors.toList());
    
  3. 通过Json转换的方式赋值

    • 导入依赖
    <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>1.2.75</version>
    </dependency>
    
    • 处理
    List<A> a = new ArrayList<>();
    List<B> b = JSONArray.parseArray(JSON.toJSONString(aList), B.class);
    

标签:list1,ArrayList,List,list2,new,相互间,赋值
来源: https://www.cnblogs.com/cwtjyy/p/16185604.html