Java中创建Stream流对象的常用方法与示例
时间:2026-08-18 | 作者:骑光打字机 | 阅读:0创建Stream流对象的常见方式
在上一小节中,介绍了聚合操作的主要使用步骤。其中首要解决的问题,就是创建Stream流对象。
聚合操作针对的是可迭代数据,如集合、数组等。因此,创建Stream流对象,本质上就是将集合、数组等通过一些方法转换为Stream流对象。
在 Ja va 里,集合对象都有各自对应的集合类。因此,可以直接借助这些集合类提供的静态方法来创建 Stream 流对象。
数组则不一样。它并不存在一个专门的“数组类”可供调用,所以只能通过别的方式来生成 Stream。
也正因为源数据类型不同,Ja va 针对 Stream 流对象的创建准备了多种方案,具体可以分为下面几种:
- 所有的Collections集合都可以使用stream()静态方法获取Stream流对象;
- Stream接口的of()静态方法可以获取基本类型包装类数组、引用类型数组和单个元素的Stream流对象;
- Arrays数组工具类的stream()静态方法也可以获取数组元素的Stream流对象。
案例演示
接下来,通过一个案例来学习聚合操作中如何创建Stream流对象,如文件1所示。
文件1 Example32.ja va
1 import ja va.util.*;
2 import ja va.util.stream.Stream;
3 public class Example32 {
4 public static void main(String[] args) {
5 // 创建一个数组
6 Integer[] array = { 9, 8, 3, 5, 2 };
7 // 将数组转换为List集合
8 List list = Arrays.asList(array);
9 // 1、使用集合对象的stream()静态方法创建Stream流对象
10 Stream stream = list.stream();
11 stream.forEach(i -> System.out.print(i+" "));
12 System.out.println();
13 // 2、使用Stream接口的of()静态方法创建Stream流对象
14 Stream stream2 = Stream.of(array);
15 stream2.forEach(i -> System.out.print(i+" "));
16 System.out.println();
17 // 3、使用Arrays数组工具类的stream()静态方法创建Stream流对象
18 Stream stream3 = Arrays.stream(array);
19 stream3.forEach(i -> System.out.print(i+" "));
20 }
21 }
运行结果如图1所示。
图1 运行结果
案例说明
文件1中,先创建了一个数组和一个集合。随后,通过三种方式实现了Stream流对象的创建。
最后,再通过Stream流对象的forEach()方法,结合Lambda表达式,完成了集合和数组中元素的遍历。
小提示
到了 JDK 8,只有单列集合对应的 Collection 接口对象 才提供了 stream() 方法来获取 Stream 流对象,Map 本身并没有直接提供获取 Stream 流的相关方法。
也就是说,想基于 Map 创建 Stream,不能一步到位。
需要先通过 keySet()、values()、entrySet() 这些方法,把 Map 转成单列的 Set 或 Collection 视图。
然后,再调用单列集合的 stream() 方法,分别拿到键集合、值集合或键值对集合对应的 Stream 流对象。
免责声明:文中图文均来自网络,如有侵权请联系删除,心愿游戏发布此文仅为传递信息,不代表心愿游戏认同其观点或证实其描述。
相关文章
更多-
- 迅捷路由器怎么调信号最强,设置时要注意什么?
- 时间:2026-08-27
-
- vivo浏览器怎么卸不掉?原因和解决方法在这里
- 时间:2026-08-27
-
- OPPO R11s黑屏了,怎么强制恢复出厂设置?
- 时间:2026-08-27
-
- 飞利浦显示器包装盒有生产日期和保修期吗?怎么看?
- 时间:2026-08-27
-
- 联想新平板开机必须联网吗?怎么做?
- 时间:2026-08-27
-
- 平板横竖屏切换设置与问题解决
- 时间:2026-08-27
-
- 移动电源容量怎么测?要准备哪些工具?
- 时间:2026-08-27
-
- 荣耀90 Pro防水吗?防水级别多少?怎么用才安全
- 时间:2026-08-27
精选合集
更多大家都在玩
大家都在看
更多-
- 糖尿病完全不能吃糖吗
- 时间:2026-09-15
-
- 蚂蚁庄园小课堂2026年9月16日最新题目答案
- 时间:2026-09-15
-
- 小鸡答题今天的答案是什么2026年9月16日
- 时间:2026-09-15
-
- 蚂蚁庄园每日答题答案2026年9月16日
- 时间:2026-09-15
-
- 以下哪种粮食是酿造绍兴黄酒的主要原料 蚂蚁庄园今日答案9月16日
- 时间:2026-09-15
-
- 劝学名句“及时当勉励,岁月不待人”出自哪位诗人 蚂蚁庄园今日答案9.16
- 时间:2026-09-15
-
- 蚂蚁庄园今天答题答案2026年9月16日
- 时间:2026-09-15
-
- 蚂蚁庄园答题今日答案2026年9月16日
- 时间:2026-09-15
