Stream流

Stream流的原理和lambda表达式差不多,本质上都是语法糖.

lambda表达式是基于匿名内部类来实现的,编译器最终编译是还是会转变成匿名内部类的形式来解析

stream流的主要作用为: 数据源 数据处理 收集结果

一下是一些stream流的常用方法

复制代码
 List<String> list = Arrays.asList("hello,lambda","陈兰","nihao");
//        list.stream() //获取数据源
//                .filter(str -> str.length() >= 5) //数据处理
//                .forEach(str -> System.out.println(str)); //收集结果
//        //limit
//        list.stream()
//                .limit(2)
//                .forEach(str-> System.out.println(str));
        //sorted
        List<Integer> list = Arrays.asList(1, 5, 2, 32, 12);
//        list.stream()
//                .sorted(Comparator.reverseOrder())
//                .forEach(num -> System.out.println(num));
//        System.out.println(list.stream()
//                .max(Integer::compareTo).get());
//        System.out.println(list.stream()
//                .min(Integer::compareTo).get());
//        System.out.println(list.stream().count());

        //map
//        list.stream()
//                .map(num -> num+10)
//                .forEach(num-> System.out.println(num));
        //reduce
//        System.out.println(list.stream()
//                .reduce((sum, num) -> sum + num).get());

        //collection
        List<Integer> collect = list.stream()
                .filter(num -> num % 2 == 0)
                .collect(Collectors.toList());
        System.out.println(collect);
相关推荐
Flynn Liang16 小时前
可观测性与成本治理:一次对话的 17 个观测点
java·langchain·可观测性·micrometer·langchain4j·token 成本·llm 监控
金銀銅鐵17 小时前
带您看懂字节码指令(三):同一行加法,为什么有四种指令
java·jvm
文丑颜不良啊21 小时前
LeetCode2821~2840题目解析
java·leetcode
apcipot_rain21 小时前
C++转Java日记(10)
java·开发语言
简 洁 冬冬1 天前
泛型方法写法全面辨析:从「能编译」到「能跑」到「能用」
java·泛型
LGL6030A1 天前
Java学习历程31——初识Spring Boot
java·spring boot·学习
Lansonli1 天前
大数据Spark(八十八):Spark任务资源之Standalone集群测试
java·服务器·spark
budingxiaomoli1 天前
Spring AOP
java·spring·java-ee
特立独行的猫A1 天前
Ionic + 仓颉语言的 cj-tauri 开发框架实战:开发精美移动端 APP
java·后端·python
nice_lcj5201 天前
LRU 缓存入门:它是什么、怎么用、面试怎么手写
java·数据结构·缓存·面试·lru