
Stream在Java 8中引入,它仅用于处理一组数据,而不是用于对元素进行排序。它不修改实际的集合,它们只根据管道方法提供结果。
Stream API支持多个操作,这些操作分为两部分:
- Intermediate Operation- 这些操作用于管道其他方法并转换为其他流。它们不产生结果,因为这些操作直到执行终端操作时才被调用。以下是示例:
- sorted(Comparator
) - peek(Consumer
) - distinct()
- Terminal operations - 这些操作用于生成结果。它们不能用于链接其他方法。以下是示例:
- forEach
- count
- toArray
| 序号 | 关键字 | Intermediate Operations | Terminal Operations |
|---|---|---|---|
1
网奇Eshop网络商城系统
下载
网奇.NET网络商城系统是基于.Net平台开发的免费商城系统。功能强大,操作方便,设置简便。无需任何设置,上传到支持asp.net的主机空间即可使用。系统特色功能:1、同时支持Access和SqlServer数据库;2、支持多语言、多模板3、可定制缺货处理功能4、支持附件销售功能5、支持会员组批发功能6、提供页面设计API函数7、支持预付款功能8、配送价格分地区按数学公式计算9、商品支持多类别,可 |
基本操作 | 这些操作用于管道其他方法并转换为其他流 立即学习“Java免费学习笔记(深入)”; |
Java中的终端操作是应用于流的最后一步方法。 |
| 2 | 返回类型 | 它们只返回另一个流。 | 它们返回最终结果。 |
| 3 | 方法 | sorted(Comparator peek(Consumer distinct() |
forEach count toArray |
| 4. | 用例 | 这些操作应该用于将流转换为另一个流 | 它们可以用于生成结果。 |
Intermediate和Terminal操作的示例
public class Main {
public static void main(String args[]) throws InterruptedException, ExecutionException {
List laptopList = new ArrayList();
laptopList.add("DELL");
laptopList.add("ACER");
laptopList.add("HCL");
// Intermediate operation
laptopList.sort((p1, p2) -> p1.compareTo(p2));
// Terminal Operation
laptopList.forEach(a -> {
System.out.println(a);
});
}
}











