【无标题】List<Map<String, Object>> 多字段过滤,多字段排序

1.多条件分组,返回有序linkedHashMap      

 LinkedHashMap<String, List<Map<String, Object>>> Group1 = listMap.stream()
                .collect(Collectors.groupingBy(e -> PS2IdFetchGroupKey(e), LinkedHashMap::new,         Collectors.toList())

private static String  PS2IdFetchGroupKey(Map<String, Object> map) {
        String groupKey = "";
         
         
        if (null != map.get("PS2Id")) {
            groupKey = groupKey + map.get("PS2Id").toString();
        }
         
        return groupKey;
    }

2.多条件排序

PS2SalesBizImpl对应当前类名

List<Map<String, Object>> newListMap = salesmanIdListMap.stream().sorted(Comparator.comparing(PS2SalesBizImpl :: comparingByTerminalIdwholeUnit2).reversed().thenComparing(PS2SalesBizImpl :: comparingByPS2IdwholeUnit2).reversed())
             .collect(Collectors.toList());

private static double comparingByTerminalIdwholeUnit2(Map<String, Object> map){
        return (double) map.get("terminalIdwholeUnit2");
    }
    private static double comparingByPS2IdwholeUnit2(Map<String, Object> map){
        return (double) map.get("PS2IdwholeUnit2");
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值