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);
相关推荐
We....6 分钟前
Java 分布式缓存实现:结合 RMI 与本地文件缓存
java·分布式·缓存
2401_8454174513 分钟前
set和map
java·开发语言
所愿ღ18 分钟前
JavaWeb-Servlet总结及JSP
java·笔记·servlet
杨杨杨大侠19 分钟前
Atlas Mapper 教程系列 (4/10):高级映射技巧与类型转换
java·开源·github
杨杨杨大侠21 分钟前
Atlas Mapper 教程系列 (3/10):核心注解详解与基础映射
java·开源·github
tqs_1234532 分钟前
redis zset 处理大规模数据分页
java·算法·哈希算法
尚学教辅学习资料40 分钟前
基于Spring Boot的家政服务管理系统+论文示例参考
java·spring boot·后端·java毕设
杨杨杨大侠40 分钟前
Atlas Log 0.2.0 版本
java·github·apache log4j
快乐肚皮40 分钟前
TransmittableThreadLocal:穿透线程边界的上下文传递艺术
java
渣哥41 分钟前
别再无脑 synchronized 了!Java 锁优化的 7 个狠招
java