博客
关于我
List根据对象的属性过滤、多个属性分组
阅读量:796 次
发布时间:2023-02-05

本文共 2076 字,大约阅读时间需要 6 分钟。

package com.zhifeng.sale;import com.zhifeng.sale.business.dto.SaleSettlementDetailDTO;import org.junit.Test;import java.math.BigDecimal;import java.util.ArrayList;import java.util.List;import java.util.Map;import java.util.stream.Collectors;public class StockZoneTest {    @Test    public void zoneTest(){        List
settlementDetailDTOS = new ArrayList<>(); SaleSettlementDetailDTO s1 = new SaleSettlementDetailDTO(); s1.setStockZoneId("1"); s1.setSettlementFeeType("01"); s1.setSettlementPrice(new BigDecimal(100)); SaleSettlementDetailDTO s2 = new SaleSettlementDetailDTO(); s2.setStockZoneId("1"); s2.setSettlementFeeType("02"); s2.setSettlementPrice(new BigDecimal(100)); SaleSettlementDetailDTO s3 = new SaleSettlementDetailDTO(); s3.setStockZoneId("2"); s3.setSettlementFeeType("01"); s3.setSettlementPrice(new BigDecimal(200)); SaleSettlementDetailDTO s4 = new SaleSettlementDetailDTO(); s4.setStockZoneId("2"); s4.setSettlementFeeType("02"); s4.setSettlementPrice(new BigDecimal(200)); SaleSettlementDetailDTO s5 = new SaleSettlementDetailDTO(); s5.setStockZoneId("2"); s5.setSettlementFeeType("02"); s5.setSettlementPrice(new BigDecimal(500)); settlementDetailDTOS.add(s1); settlementDetailDTOS.add(s2); settlementDetailDTOS.add(s3); settlementDetailDTOS.add(s4); settlementDetailDTOS.add(s5); Map
> collect1 = settlementDetailDTOS.stream() .filter(item -> item.getSettlementFeeType().equals("02")) .collect(Collectors.groupingBy(SaleSettlementDetailDTO::getStockZoneId)); Map
>> collect = settlementDetailDTOS.stream() .filter(item -> item.getSettlementFeeType().equals("02")) .collect(Collectors.groupingBy(SaleSettlementDetailDTO::getSettlementFeeType , Collectors.groupingBy(SaleSettlementDetailDTO::getStockZoneId))); System.out.println(collect1); }}

 

转载地址:http://jkufk.baihongyu.com/

你可能感兴趣的文章
localhost 目前无法处理此请求。 HTTP ERROR 500
查看>>
localhost与127.0.0.1,本地主机与IP地址之争!
查看>>
localhost:5000在MacOS V12(蒙特利)中不可用
查看>>
locals 和 globals
查看>>
localStorage使用总结
查看>>
location.href的几种用法
查看>>
location.href表示当前访问的网址url
查看>>
location优先级别问题
查看>>
Lock wait timeout exceeded; try restarting transaction mysql报错
查看>>
Lock 锁底层实现
查看>>
lock和synchronized区别
查看>>
Lock和synchronized区别(以及Lock的使用)
查看>>
Lock锁精讲
查看>>
Locust性能测试 —— 环境搭建及使用
查看>>
Locust简介与使用教程
查看>>
Locust:可能是一款最被低估的压测工具
查看>>
lodash常用API
查看>>
Log4j 1使用教程
查看>>
Log4j XML 配置
查看>>
Log4j 日志级别
查看>>