java8的stream的使用方法
Stream的由来
我们正常处理集合里的数据时,第一想到的是不是就是for循环,别问,问就是for循环大法。确实,面向对象的编程思维,让我们第一时间想到的就是一个一个循环然后进行一些过滤,查找,分类操作。在Java没有这个流之前,大家伙都这么做的。
为什么Java8要推出流这个东西呢,肯定是这种方法有优越性。之前的循环大法从最终的结果来看和流操作的结果是一样的,都可以完成功能。流的操作来源于Lambda表达式,如果没有Lambda表达式也不会有这个东西。使用流可以提升代码的简洁度,这个提升是质的飞跃,以前十几行代码甚至更多,现在可能只需要一行代码就能完成,这是就有不同的意见了,说这种代码难以维护,我感觉完成同样的功能,代码越少是越容易维护的,一个三百行代码的方法和一个三十行的方法,维护成本不是一个量级的。
Stream流的用法
过滤
排序
分组
归总
用来测试的数据
模拟数据实体类
尾
其实这些方法,不用死记硬背,需要的时候查询一下就行了,当用的多了自然而然的就记住了。死记硬背,当时是背下来了,不常用到的话,也会很快的遗忘。
实际上在查询数据这方面,sql是全球第一的。不要小看任何一款数据库软件。数据库软件,可以说是人类智慧的结晶,是一群智商顶尖的人,并将数据结构和算法用到极致才开发出来的东西。一个几百兆的体积的数据库软件可以毫不费力的管理大于自身几百倍体积的数据。这种能力是真正编程的美丽。
我在整理这个流的操作时,如果我们把集合看成数据库里的一行行数据,Java这个对集合的流固然强大,可和SQL一比,也能理解,毕竟闻道有先后,术业有专攻。
封
java8的stream的使用方法
https://wangijun.com/2021/08/12/java-01/