博客
关于我
List根据对象的属性过滤、多个属性分组
阅读量:803 次
发布时间: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/

你可能感兴趣的文章
NLP入门(六)pyltp的介绍与使用
查看>>
NLP学习笔记:使用 Python 进行NLTK
查看>>
NLP度量指标BELU真的完美么?
查看>>
NLP的不同研究领域和最新发展的概述
查看>>
NLP的神经网络训练的新模式
查看>>
NLP采用Bert进行简单文本情感分类
查看>>
NLP问答系统:使用 Deepset SQUAD 和 SQuAD v2 度量评估
查看>>
NLP项目:维基百科文章爬虫和分类【02】 - 语料库转换管道
查看>>
NLP:从头开始的文本矢量化方法
查看>>
NLP:使用 SciKit Learn 的文本矢量化方法
查看>>
NLTK - 停用词下载
查看>>
nmap 使用总结
查看>>
nmap 使用方法详细介绍
查看>>
nmap使用
查看>>
nmap使用实战(附nmap安装包)
查看>>
Nmap哪些想不到的姿势
查看>>
Nmap扫描教程之Nmap基础知识
查看>>
nmap指纹识别要点以及又快又准之方法
查看>>
Nmap渗透测试指南之指纹识别与探测、伺机而动
查看>>
Nmap端口扫描工具Windows安装和命令大全(非常详细)零基础入门到精通,收藏这篇就够了
查看>>