本文共 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(){ ListsettlementDetailDTOS = 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/