其实这篇文章早就列上计划了,只不过因为时间原因没有成行,正巧泛型的那篇文章基本上也要收尾了,正好接上这篇。
不过本人对于Stream也是一知半解,毕竟小城市野生程序员,没那么多大厂的实战经验,再加上本人的实力有限,所以如果文章中有任何不当之处也欢迎读到文章的同仁们不吝赐教,当然,本人CSDN博客建立的初衷其实只是给自己一个记录梳理知识的平台,方便作为自己工作的一个知识库,嗯,就酱!
其实如果想要良好掌握聚合操作,Lambda表达式和方法引用的相关知识必不可少,不过此处主要介绍的是聚合操作,所以相关知识只是粗浅涉猎,后面有时间的话我也应该会将这两点记录下来。
通常情况下,我们使用集合主要是用于数据处理,但是对于传统的集合来讲,里面并没有什么可以对集合内元素进行计算的操作,例如求和操作,我们只能定义变量,使用foreach循环后累加得出,相较于其他语言,例如C#,显得臃肿而落后,因此在JDK 8中,Java引入了一个重要的特性,就是Stream聚合操作。
我们定义一个简单的Java类
class Student {
String name;
Integer age;
getter,setter...
}
现在我们有一个学生列表students,如果我们需要打印每一位学生的姓名,可以使用以下语句
for (Student p : students) {
System.out.println(p.getName());
}
如果使用聚合操作完成上面的操作,可以这样写:
students
.str