Stream 一般配合List 使用
常见的使用方法和程序运行结果都在下面

private static void test1() {List<Integer> integers = Arrays.asList(1, 2, 3, 4, 5);List<Integer> collect = integers.stream().skip(1).collect(Collectors.toList());collect.forEach(System.out::println);//打印信息//2//3//4//5}private static void test2() {List<Integer> integers = Arrays.asList(1, 2, 3, 4, 5);List<Integer> collect = integers.stream().filter(integer -> integer > 2).collect(Collectors.toList());collect.stream().forEach(System.out::println);//打印信息//3//4//5}private static void test3() {List<Integer> integers = Arrays.asList(1, 2, 3, 4, 5);System.out.println(integers.stream().anyMatch(integer -> integer > 2));//打印信息//true}private static void test4() {List<Integer> integers = Arrays.asList(9, 1, 2, 3, 4, 5);int max = integers.stream().max(Comparator.comparingInt(x -> x)).get();int min = integers.stream().min(Comparator.comparingInt(x -> x)).get();System.out.println(max);System.out.println(min);//打印信息//9//1}private static void test5() {List<Integer> integers = Arrays.asList(9, 1, 2, 3, 4, 5);int count = (int) integers.stream().count();System.out.println(count);//打印信息//6}private static void test6() {List<Integer> integers = Arrays.asList(9, 1, 2);
//        int total = integers.stream().reduce((integer, integer2) -> integer + integer2).get();int total = integers.stream().reduce(Integer::sum).get();System.out.println(total);//打印信息//12}private static void test7() {List<Integer> integers = Arrays.asList(9, 1, 2, 3, 4, 5);integers.stream().map((i)-> i + "*").collect(Collectors.toList()).forEach(System.out::println);//打印信息//9*//1*//2*//3*//4*//5*}private static void test8() {List<Integer> integers = Arrays.asList(9, 1, 2, 3, 4, 5);integers.stream().flatMap((Function<Integer, Stream<String>>) integer -> Stream.of(integer + "#")).collect(Collectors.toList()).forEach(System.out::println);//打印信息//9#//1#//2#//3#//4#//5#}private static void test9() {List<Integer> integers = Arrays.asList(9, 1, 2, 3, 4, 5);integers.stream().sorted(Comparator.comparingInt(x -> x)).forEach(System.out::println);//打印信息//1//2//3//4//5//9}private static void test10() {List<Integer> integers = Arrays.asList(1, 1, 2, 2, 3, 5);integers.stream().distinct().sorted(Comparator.comparingInt(x -> x)).forEach(System.out::println);//打印信息//1//2//3//5}private static void test11() {List<Integer> integers = Arrays.asList(1, 1, 2, 2, 3, 5);System.out.println(integers.stream().map(x -> x + "").collect(Collectors.joining("|")));//打印信息//1|1|2|2|3|5}private static void test12() {List<Integer> integers = Arrays.asList(1, 5);System.out.println(integers.stream().collect(Collectors.averagingInt(x -> x)));//打印信息//3.0}

Java8 Stream 使用相关推荐

  1. JAVA8 Stream方法使用详解reduce、IntStream(二)

    文章目录 一 归约 1.元素求和 2.最大值和最小值 二.数值流 1.映射数值流 2.转换对象流 3.数值范围 三.构建流 1.由值创建流 2.由数组创建流 3.由文件生成流 4.由函数生成流 此章节 ...

  2. 怎么break java8 stream的foreach

    文章目录 简介 使用Spliterator 自定义forEach方法 总结 怎么break java8 stream的foreach 简介 我们通常需要在java stream中遍历处理里面的数据,其 ...

  3. java8 stream案例分析

    java8 stream Stream是java8 推出的一个处理集合类的一个全新的接口,在工作当中经常用到,并且他的预发规则与我们平台的有一点不一样,是流式的处理,非常类似RXJava的一个风格. ...

  4. java多字段排序,java8 stream多字段排序的实现

    很多情况下sql不好解决的多表查询,临时表分组,排序,尽量用java8新特性stream进行处理 使用java8新特性,下面先来点基础的 List list; 代表某集合 //返回 对象集合以类属性一 ...

  5. 简洁又快速地处理集合——Java8 Stream(下)

    上一篇文章我讲解 Stream 流的基本原理,以及它与集合的区别关系,讲了那么多抽象的,本篇文章我们开始实战,讲解流的各个方法以及各种操作 没有看过上篇文章的可以先点击进去学习一下 简洁又快速地处理集 ...

  6. Java8 stream().map()将对象转换为其他对象

    Java8 stream().map()将对象转换为其他对象 1: 将对象List转为List public class user{private String name;private String ...

  7. java8 Stream的实现原理 (从零开始实现一个stream流)

    1.Stream 流的介绍 1.1 java8 stream介绍 java8新增了stream流的特性,能够让用户以函数式的方式.更为简单的操纵集合等数据结构,并实现了用户无感知的并行计算. 1.2  ...

  8. java sort 效率_性能对比:collections.sort vs treeSet sort vs java8 stream.sorted

    0 写在前面的话 在项目中有一个排序问题,考虑到未来需要排序的数据量可能很大,想用一个性能较好的排序算法,现在有三套解决方法:jdk提供的集合的sort方法(Collections.sort).一个可 ...

  9. Java基础学习总结(132)——Java8 Stream流操作学习总结

    传统的数据处理都是用循环来解决,而不是像搜索数据库那样有具体的搜索语句,而Java8的Stream提供了很好的方案,往往一行就搞定了,而且Stream还可以链式操作,一行代码实现多个循环的功能,代码风 ...

  10. java8 stream().map().collect()用法

    java8 stream().map().collect()用法 有一个集合: List<User> users = getList(); //从数据库查询的用户集合 现在想获取User的 ...

最新文章

  1. 计算机视觉行业迎来大发展,多角度解读未来前景
  2. 100行的python作品详解_不到 100 行 Python 代码徐峥变葛优
  3. httpclient发起https请求以及获取https返回内容
  4. MySQL LIST分区(转载)
  5. 如果你需要在 XHTML 中声明 DOCTYPE,必须使用到jsp:text动作元素
  6. 参会指南丨3分钟带你玩转2019数据技术嘉年华!
  7. matlab去趋势,[转载]使用Matlab对数据进行去趋势(detrend)
  8. 字符串模式匹配(bf+KMP)
  9. canoco5冗余分析步骤_基因富集分析|理解
  10. 数据结构课程设计之学生宿舍信息管理系统
  11. mac monterey、big sur、Catalina原生heic、jpg壁纸,并将壁纸拷贝到系统文件夹下教程
  12. mac brew 启动服务时报错“Bootstrap failed: 5: Input/output error”
  13. 《柴静:穹顶之下》中用到的数据可视化
  14. 鸿蒙杀戮手机电脑版,鸿蒙杀戮单职业
  15. 超实用!轻松几步修复灰蒙蒙的情侣合照!
  16. 逆水寒能不能网页预约服务器,不是说《逆水寒》凉了吗,为什么新服预约不到1小时就满了?...
  17. CentOS 7 网络配置
  18. 利用cmd命令创建vue项目
  19. 《计算机应用基础》第04章在线测试,《计算机应用基础》在线测试.doc
  20. yum出现Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile解决方法

热门文章

  1. 非极大值抑制_非极大值抑制(Non-Maximum Suppression)
  2. C++编程进阶9(如何将构造函数和非成员函数虚化、无锁单例模式)
  3. vue 返回滚动条顶部组件_vue中回到顶部
  4. 人类又双叒叕输了,就没人能管管这条“狗”吗?
  5. Linux运维课程 第一阶段 重难点摘要(六)CISCO
  6. mysql left join的深入探讨
  7. PARSEC測试集的应用领域和working set的大小
  8. 去掉数组中重复的数字。
  9. windows下mongodb配置
  10. 面试准备3——相关知识