• 使用Lambda表达式.map循环遍历List集合赋值


    使用Lambda表达式给对象赋值

    1. 技术点
    • 使用Lambda表达式.map循环遍历List集合赋值
    1. 实体类
    @Data
    public class InfoNoticeItem implements Serializable {
        /**
         * serialVersionUID
         */
        private static final long serialVersionUID = 6411598034131994800L;
        /**
         * ids 商品内码
         */
        private String ids;
    
        /**
         * storeCode 门店编号
         */
        private String storeCode;
    }
    

    1. 测试类
    import com.alibaba.fastjson.JSON;
    
    import java.util.ArrayList;
    import java.util.Collections;
    import java.util.List;
    import java.util.stream.Collectors;
    
    public class Test {
        public static void main(String[] args) {
    
            InfoNoticeItem re2 = new InfoNoticeItem();
            re2.setIds("2");
            re2.setStoreCode("高佳琪");
    
            InfoNoticeItem re4 = new InfoNoticeItem();
            re4.setIds("4");
            re4.setStoreCode("王莹莹");
    
            List<InfoNoticeItem> list = new ArrayList<>();
            Collections.addAll(list, re2, re4);
    
            ShopInfoNoticeReq shopInfoNoticeReq = new ShopInfoNoticeReq();
            shopInfoNoticeReq.setFormat(null);
            shopInfoNoticeReq.setIdList(list);
    
            // 赋值.setIdList(collect)
            // public void setIdList(List<InfoNoticeItem> idList)
            List<InfoNoticeItem> collect = shopInfoNoticeReq.getIdList().stream().map(item -> {
                InfoNoticeItem ini = new InfoNoticeItem();
                ini.setIds(item.getIds());
                ini.setStoreCode(item.getStoreCode());
                return ini;
            }).collect(Collectors.toList());
    
            try {
                Thread.sleep(2000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            System.out.println(JSON.toJSON(collect));
            //TODO 输出:[{"ids":"2","storeCode":"高佳琪"},{"ids":"4","storeCode":"王莹莹"}]
        }
    }
    

    简单使用

      ArrayList<Student> list = new ArrayList<>();
      Collections.addAll(list, new Student(0, "张三"), new Student(10, "李四"));
    
      System.out.println(list.stream().map(value -> value.getId()).collect(Collectors.toList()));
      System.out.println(list.stream().map(Student::getId).collect(Collectors.toList()));
      //输出: [0, 10]
      //输出: [0, 10]
    
  • 相关阅读:
    小程序 琐碎
    html + css 琐碎
    mysql 认识
    vue2.x.0 版本新增的 API
    AMD、CMD 和 CommonJS 的区别
    改变UIPageControl圆点间距
    android 内存回收
    ios点击改变uiview背景颜色
    objc_setAssociatedObject 使用
    Position Independent Code (PIC) in shared libraries【转载】
  • 原文地址:https://www.cnblogs.com/Twittery/p/14668293.html
Copyright © 2020-2023  润新知