首页 > 其他分享 >Stream流的应用

Stream流的应用

时间:2023-09-09 19:56:15浏览次数:28  
标签:Stream 应用 groupingBy Collectors getShopId shopCarItemDto ShopCartItemDto

Stream流的应用


 

Collectors.groupingBy(ShopCartItemDto::getShopId)

 

stream()方法将该列表转化为一个流,可以对其中的元素进行操作。

 

collect()方法是一个终止操作,用于将流的元素收集到一个集合中。在这里,groupingBy()Collectors类的一个静态方法,它接受一个分类函数作为参数,并根据该函数对流中的元素进行分组

 

ShopCartItemDto::getShopId是一个方法引用,指定了分类函数,即根据ShopCartItemDto对象的getShopId()方法的返回值进行分组。

Collectors.groupingBy(ShopCartItemDto::getShopId) 是一个分组的操作

其意思为通过shopId把shopCarItems中的每一个shopCarItemDto进行分类 形成一个Map集合

集合的键就是shopId 值就是shopCarItemDto

 

 


 

.filter(shopCartItemDto -> basketId.contains(shopCartItemDto.getBasketId()))

 

 

这里的shopCarItemDto 意思是取出dbShopCarItems中的每一个元素 名字可以是abcd 自己定义

filter是一个过滤器 用来筛选全部shopCarItemDto 中被basketId包含的元素

 

标签:Stream,应用,groupingBy,Collectors,getShopId,shopCarItemDto,ShopCartItemDto
From: https://www.cnblogs.com/zwy-yjy/p/17690059.html

相关文章

  • 用 Visual Studio Code 开发 Angular 应用自动生成的 .angular 文件夹
    在Angular开发中,项目根目录下的.angular文件夹是AngularCLI工具的一部分,它包含了一些配置和缓存文件,用于提高开发效率和构建性能。.angular文件夹的作用主要包括:缓存构建信息:.angular文件夹中包含了一些缓存文件,用于存储先前构建的信息,以加速后续的构建过程。这有助于......
  • 关于 fakeAsync 在 Angular 应用单元测试开发领域的使用介绍
    笔者最近三年一直在SAP中国研究院从事SAPCommerceCloud(电商云)这款产品的前端开发。电商云Storefront基于开源项目Spartacus,其Github代码仓库地址可以通过这个链接访问。我最近所在的团队一直在负责Spartacus服务器端渲染(SSR)逻辑的开发,包含渲染引擎(RenderingE......
  • 什么是 Angular 应用 angular.json 中的 assets 数组
    在Angular项目中,angular.json是一个非常重要的配置文件,用于定义和管理项目的各种设置和构建选项。其中,assets数组是angular.json中的一个关键配置项,用于指定需要在构建后包含在应用程序中的静态资源文件和文件夹。在本文中,我将解释什么是assets数组,并提供详细示例来说明如何使用它......
  • cmake基础示例:如何编译【跨平台】的动态库和应用程序
    示例代码首先看一下测试代码的全貌:mylib:只有一个源文件,编译输出一个动态库;myapp:也只有一个源文件,链接mylib动态库,编译输出一个可执行程序; mylib在mylib目录中,一共有3个文件:mylib.h,mylib.c以及CMakeLists.txt,内容分别如下://mylib/mylib.hw文件#ifndef_M......
  • 【9月摸鱼计划】IGBT在光伏上的应用
    IGBT(绝缘栅双极晶体管)在光伏领域中具有广泛的应用。IGBT作为一种高效的电力电子器件,能够在复杂的电力转换和控制系统中有出色的表现。在光伏系统中,IGBT主要应用于逆变器、直流变换器和交流电源等方面。逆变器是光伏系统中的关键部分,它负责将直流电转换为交流电以便于电网使用。在......
  • 制造业数字化转型顶层设计业务架构和应用架构规划方法
     引言   当前制造业产业转型升级已成为国家战略,智能制造的理念也在行业中快速推行和应用。在当下制造业数字化转型的浪潮中,数字化顶层规划以企业架构方法论为依托,围绕数字化转型规划战略,帮助企业识别企业在转型过程中应该具备的核心业务能力,构建企业数字化运营能力总体蓝图,......
  • 一、SpringCloud Alibaba之普通应用
    1.1、创建一个maven项目新建项目操作路径:File->new->project输入相关的配置:Name:项目名称Location:项目所在位置ArtifactCoordinates:项目坐标(制品坐标)更改配置文件在项目中指定了打包方式为pom方式,此时项目目录下就不需要src目录,只保留一个pom.xml文件就行。创......
  • vue 项目改为微应用后,原本的项目地址打不开为什么?
    当将Vue项目改为微应用之后,需要进行一些配置才能正常运行。首先,确保微应用项目的依赖中已经添加了qiankun,并在主应用的main.js中进行了相关配置。可以参考qiankun官方文档来配置主应用。在进行部署时,需要注意以下几点:跨域配置:微应用可能会存在跨域请求的问题。在部署时,需确保主应用......
  • 关于 TypeScript 展开运算符在 Angular 应用开发中的应用一例
    笔者最近一直在SAP中国研究院从事Angular开发,我所在的团队负责使用Angular开发SAPCommerceCloud这款产品的界面,项目代号为Spartacus.这是一个开源项目,我们项目的Github地址如下。最近我处理了一个bug,我的代码改动放在这个PullRequest里。下面是这个PullReque......
  • 关于 Angular 应用开发里 Subject 和 BehaviorSubject 的用法一例
    笔者一直在SAP中国研究院从事CommerceCloud这款Angular应用的开发,最近工作中修复了一个bug.在SpartacusUI上点击Create按钮之后:维护User的明细数据,然后点击Save按钮:点击之后,我们期望的结果是收到一条用户成功创建的提示消息,并且页面自动导航回到点击Creat......