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流终结方法

相关推荐
HRBorderInsight1 小时前
马来西亚人均收入一个月多少钱,个人薪资和家庭收入要分开看
经验分享·笔记
Pniubi2 小时前
HashMap的扩容和树化边界
java·开发语言
Mikko72 小时前
用 Java 复刻了高中时在塞班上玩的「熔岩矿车」:纯 Swing、零依赖、没有一张图片,一个 jar 双击就能玩
java·游戏开发·swing
知了学历孙老师2 小时前
小自考的校考和统考,出题方和难度差在哪
java·大数据·前端
Java爱好狂.2 小时前
Java初学者如何一周速通SpringBoot!
java·spring boot·后端·spring·高并发·架构师·java面试
又見山3 小时前
本地 Markdown 与数据主权:你的笔记到底属于谁
笔记·obsidian
秋饼3 小时前
LLM API密钥动态轮换实战:Spring Vault + Spring AI + 多Provider路由
java·ai·技术分享·后端开发
撩得Android一次心动4 小时前
Jetpack Compose 知识点整理2【个人用】
android·笔记·学习·kotlin·compose
cao23334 小时前
关于 x1 y1 等变量名冲突的指正(校对版)
笔记
福兮说5 小时前
JSON 格式正确,数据就可靠吗?我用一份自编配置检查类型与空值
java·前端·json