Stream()表达式

  虽然大部分情况下stream是容器调用Collection.stream()方法得到的,但stream和collections有以下不同:

无存储。stream不是一种数据结构,它只是某种数据源的一个视图,数据源可以是一个数组,Java容器或I/O channel等。
为函数式编程而生。对stream的任何修改都不会修改背后的数据源,比如对stream执行过滤操作并不会删除被过滤的元素,而是会产生一个不包含被过滤元素的新stream。
惰式执行。stream上的操作并不会立即执行,只有等到用户真正需要结果的时候才会执行。
可消费性。stream只能被“消费”一次,一旦遍历过就会失效,就像容器的迭代器那样,想要再次遍历必须重新生成。

1、forEach() 使用该方法迭代流中的每个数据

2、sorted() 使用该方法排序数据

参考地址:https://blog.csdn.net/kris1025/article/details/85861196

参考地址:https://blog.csdn.net/lsgqjh/article/details/63686383

3、filter():使用该方法过滤

4、limit():使用该方法截断

5、skip():与limit互斥,使用该方法跳过元素

6、distinct():使用该方法去重,注意:必须重写对应泛型的hashCode()和equals()方法

7、max,min,sum,avg,count

8、map():接收一个方法作为参数,该函数会被应用到每个元素上,并将其映射成一个新的元素

9、flatMap():对每个元素执行mapper指定的操作,并用所有mapper返回的Stream中的元素组成一个新的Stream作为最终返回结果,通俗易懂就是将原来的stream中的所有元素都展开组成一个新的stream

10、findFirst() :使用该方法获取第一个元素

11、reduce() :多面手

12、使用collect()做字符串join

参考地址:https://blog.csdn.net/chenhao_c_h/article/details/80691284

Lambda表达式

 

最新文章

  1. pdf 切割成圖片的方法
  2. Swift-2-基本操作符
  3. Android:控件ListView列表项与适配器结合使用
  4. linux下nagios的安装与部署
  5. symfony2 表单
  6. [Java]HashMap的两种排序方式
  7. 第二次冲刺spring会议(第五次会议)
  8. Flex: Holy Grail
  9. Html和Css学习笔记-css进阶-盒模型
  10. laravel学习笔记二
  11. eclipse Maven Dependencies 黑色背景说明
  12. 【代码笔记】Web-JavaScript-JavaScript switch语句
  13. AI 可视化
  14. Android 7.0以上版本 系统解决拍照的问题 exposed beyond app through ClipData.Item.getUri()
  15. javascript变量声明前置
  16. C# 窗体常用API函数 应用程序窗体查找
  17. Mybatis使用入门
  18. C# 实体集合和实体转换成相应的string、XDocument、XElement、XDocument
  19. sqlserver2008事务日志已满
  20. onbeforeunload事件

热门文章

  1. 转载--C++的反思
  2. Internet History, Technology, and Security(week3)——History: The Web Makes it Easy to Use
  3. AI移动,缓慢转身设置(针对AI Character)
  4. [springboot jpa] [bug] Could not open JPA EntityManager for transaction
  5. js中获取当前系统时间
  6. 在Ubuntu16.04下安装SourceInsight和WeChat
  7. grep的用法,小技巧,模板中含有\t时:grep -P "^\t" file
  8. 服务器上安装搭建node环境
  9. list转datatable,SqlBulkCopy将DataTable中的数据批量插入数据库
  10. 三十六、python 中subprocess介绍