list集合对象的拆分使用

该代码演示了如何使用Java8的StreamAPI和Collectors对List<ZLDXXEntity>集合进行按字段分组,然后将分组后的数据存入新的列表中。主要涉及JSON解析、集合处理和流操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1丶根据某个字段值分成若干个集合:
		// 需拆分的集合
        List<ZLDXXEntity> list = JSONObject.parseArray(jsonStr, ZLDXXEntity.class);
        // 保存拆分数据的集合
        List<List<ZLDXXEntity>> sumList = new ArrayList<>();
        // 进行拆分处理
        list.stream().collect(Collectors.groupingBy(ZLDXXEntity::getZLDH, Collectors.toList()))
                .forEach((accountId, shopProductVoList) -> sumList.add(shopProductVoList));
        System.out.println(JSONObject.toJSONString(sumList));
2丶提取集合中的某个字段集合
List<ZLDXXEntity> list = JSONObject.parseArray(jsonStr, ZLDXXEntity.class);
List<String> ids = list .stream().map(ZLDXXEntity::getBH).collect(Collectors.toList());
3丶根据元素对象筛选条件
@Test
    public void test5() {
        List<JZLBEntity> list = new ArrayList<>();
        JZLBEntity entity1 = new JZLBEntity();
        entity1.setXM("-");
        entity1.setXB("男");
        list.add(entity1);

        JZLBEntity entity2 = new JZLBEntity();
        entity2.setXM("张三");
        entity2.setXB("男");
        list.add(entity2);

        JZLBEntity entity3 = new JZLBEntity();
        entity3.setXM("李四");
        entity3.setXB("男");
        list.add(entity3);

        System.out.println(JSONObject.toJSONString(list));

        list.removeIf(item -> item.getXM().equals("-"));
        System.out.println(JSONObject.toJSONString(list));
    }
运行结果:
[{"XB":"男","XM":"-"},{"XB":"男","XM":"张三"},{"XB":"男","XM":"李四"}]
[{"XB":"男","XM":"张三"},{"XB":"男","XM":"李四"}]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值