Java学习笔记_Day27(Stream流)

Stream流的作用:

结合了Lambda表达式,简化集合,数组的操作

1.Stream流的获取

1.单列集合

java 复制代码
ArrayList<String> list = new ArrayList<String>();
        Collections.addAll(list, "A", "B", "C", "D", "E", "F", "G");
        list.stream().forEach(s->System.out.println(s));

2.双列集合

java 复制代码
HashMap<String,Integer> hm = new HashMap<>();
        hm.put("A", 1);
        hm.put("B", 2);
        hm.put("C", 3);
        hm.put("D", 4);
        hm.keySet().stream().forEach(s->System.out.println(s));
        hm.entrySet().stream().forEach(s->System.out.println(s));

3.数组

java 复制代码
int[] arr={1,2,3,4,5};
Arrays.stream(arr).forEach(s->System.out.println(s));

4.一堆零散数据

java 复制代码
Stream.of(1,2,3,4,5).forEach(s-> System.out.println(s));

Stream接口中静态方法of的细节:

方法的形参是一个可变参数,也可以传递数组

但是数组必须是引用数据类型的,如果传递基本数据类型,会把整个数组当做一个元素放到Stream中

Stream流的中间方法

注意1:中间方法返回新的Stream流,原来的Stream流只能使用一次,建议使用链式编程

注意2:修改Stream流中的数据,不会影响原来集合或者数组中的数据

3.Stream流终结方法

相关推荐
Wang's Blog34 分钟前
PostgreSQL笔记20: 实例、集群、模板数据库与表空间 —— 逻辑体系架构深度解析
数据库·笔记·postgresql
2602_9599609239 分钟前
大厂Java面试:Spring Boot、JVM、Redis、Kafka与Elasticsearch在内容社区UGC场景下的实战拷问
java·jvm·spring boot·redis·面试题
Linux-lucky8 小时前
21-Linux学习之旅之HTTPS和安全加固
linux·运维·学习·ubuntu·https
St_rive8 小时前
Page Object设计模式
java·开发语言·设计模式
wp123_18 小时前
硬件元器件笔记|IPX8 防水 Type‑C 母座安费诺 124018802112A 与 TONEVEE TY48086‑24A 分析
c语言·开发语言·笔记
风流 少年8 小时前
Spring AI 2.0:SSE
java·人工智能·spring
凤山老林9 小时前
精细化流量治理:Spring Boot 动态特性开关与灰度发布体系
java·spring boot·后端
mifengxing9 小时前
操作系统 文件系统
笔记·操作系统·计算机408
学运维的Kysan10 小时前
暑假运维学习打卡第二十六天8.17
学习
无聊的菜鸟10 小时前
TMS320F2806X学习笔记(零)—— C2000、CCS、新建工程
笔记·mcu·c2000·f2806x