两种方式获取Stream流的方式

  • java.util.stream.Stream<T> 是Java 8 新加入的最常用的流接口。(这并不是一个函数式接口)

  • 获取一个流有以下两种方式

    |-------------------------------------------|-----------------------------------------------------------------------------------------------------|
    | * 所有的 Collection集合 都可以通过stream默认方法获取流 | * |
    | * Stream接口 的静态方法of可以获取数组对应的流 | * |

    java 复制代码
    package com.csdn.stream;
    import java.util.*;
    import java.util.stream.Stream;
    public class Demo02GetStream {
        public static void main(String[] args) {
            //把集合转换为Stream流
            List<String> list = new ArrayList<>();
            Stream<String> stream1 = list.stream();
    
            Set<String> set = new HashSet<>();
            Stream<String> stream2 = set.stream();
    
            Map<String, String> map = new HashMap<>();
            //获取键,存储到一个Set集合中
            Set<String> keySet = map.keySet();
            Stream<String> stream3 = keySet.stream();
    
            //获取值,存储到一个Collection集合中
            Collection<String> values = map.values();
            Stream<String> stream4 = values.stream();
    
            //获取键值对(键与值的映射关系 entrySet)
            Set<Map.Entry<String, String>> entries = map.entrySet();
            Stream<Map.Entry<String, String>> stream5 = entries.stream();
    
            //把数组转换为Stream流
            Stream<Integer> stream6 = Stream.of(1, 2, 3, 4, 5);
    
            //可变参数可以传递数组
            Integer[] arr = {1, 2, 3, 4, 5};
            Stream<Integer> stream7 = Stream.of(arr);
            String[] arr2 = {"a", "bb", "ccc"};
            Stream<String> stream8 = Stream.of(arr2);
        }
    }
相关推荐
Zella折耳根18 分钟前
复习篇-继承和接口
java·开发语言·python
程序员二叉24 分钟前
【JVM】OOM详解+JVM参数+FullGC排查+CPU飙高+死锁+内存泄漏+命令大全
java·开发语言·jvm·面试
云烟成雨TD25 分钟前
Spring AI 1.x 系列【47】 MCP Annotations 模块
java·人工智能·spring
不知名的老吴43 分钟前
线程的生命周期之线程同步
java·开发语言·jvm
协享科技1 小时前
Spring Boot 与 Go 双服务架构实践:从单体拆分到通信设计
java·人工智能·spring boot·后端·架构·golang·ai编程
码语智行1 小时前
地图上图、空间拓扑查询示例
java·arcgis
程序员黑豆2 小时前
AI全栈开发 - Java:变量
java·前端·ai编程
我是一颗柠檬2 小时前
【Java项目技术亮点】分库分表+数据路由策略:单表5000万后的架构升级方案
java·开发语言·分布式·架构
布朗克1682 小时前
25 IO流高级操作——序列化、NIO与Files工具类
java·数据库·io·nio
小研说技术2 小时前
Spring AI实现rag流程(简易版)
java·后端