zoukankan      html  css  js  c++  java
  • java8 按照list中对象的子对象的某个属性排序

    public class A{
    
     private B b;
    
    }
    
    
    
    public class B{
    
      private int id;
    
    }

    //对于List<A> 按照B对象的id进行排序:

    list.stream().sorted(Comparator.comparing(x-> x.getB().getId())).collect(Collectors.toList());

      

    追加:flatMap用法,使用Java8 将集合对象中嵌套的集合扁平化 

    类示例:

    public class CaseRoleDTO {
         private List<CaseGoodsTypeDTO> typeList;
    }
    
    public class CaseGoodsTypeDTO {
        private List<CaseGoodsDTO> goodsList;
    }
    
    public class CaseGoodsDTO {
        //....
    }
    List<CaseRoleDTO> caseRoleDtoList = Lists.newArrayList();
    List<CaseGoodsDTO> caseGoodsList = caseRoleDtoList.stream()
            .filter(x -> Collections3.isNotEmpty(x.getTypeList()))
            .flatMap(x -> x.getTypeList().stream().flatMap(v -> v.getGoodsList().stream()))
            .collect(Collectors.toList());
  • 相关阅读:
    zabbix邮箱告警配置
    kali linux 开启配置ssh服务
    自主访问控制和强制访问控制
    Eddy's picture
    Connect the Cities--hdoj
    Dark roads--hdoj
    Ice_cream’s world III
    国王的烦恼---nyoj
    Tree
    Jungle Roads --hdoj
  • 原文地址:https://www.cnblogs.com/shuaixiaobing/p/13156533.html
Copyright © 2011-2022 走看看