Java8中Stream的一些神操作

 更新时间:2021年11月02日 12:15:40   投稿:daisy  
Stream是Java8中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作,这篇文章主要给大家介绍了Java8中Stream的一些神操作,需要的朋友可以参考下

Java8对集合提供了一种流式计算的方式,这种风格将要处理的元素集合看 作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如 筛选, 排序,聚合等。

Stream API 基本都是返回Stream本身,这样多个操作可以串联成一个管 道, 如同流式风格(fluent style)。 这样做可以对操作进行优化, 比 如延迟执行(laziness)和短路( short-circuiting)

stream() 为集合创建串行流

parallelStream() 为集合创建并行流

private void createStream(){
    Stream<Integer> stream = getList().stream();
    Stream<Integer> parallelStream = getList().parallelStream();
}

stream提供了一个内部遍历的方式forEach(),通过forEach可以大大简化集 合遍历的代码。

private void forEach(){
    getList().forEach(i->System.out.println(i));
}

stream提供了一个用于数据过滤的方法filter(),与stream的其他API配合 使用可以简单的实现数据过滤。

stream提供了一个用于数据映射的方法map(),与stream的其他API配合使用 可以简单的实现数据映射。

stream提供了一个用于数据映射的方法sorted(),与stream的其他API配合 使用可以简单的实现数据排序。

Collectors 类实现了很多归约操作,例如将流转换成集合和聚合元素。 Collectors 可用于返回列表或字符串。

一些产生统计结果的收集器也非常有用。它们主要用于int、double、long 等基本类型上,它们可以用来产生类似如下的统计结果。

总结

到此这篇关于Java8中Stream的文章就介绍到这了,更多相关Java8 Stream神操作内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • spring boot 结合jsp案例详解

    spring boot 结合jsp案例详解

    这篇文章主要介绍了spring boot 结合jsp案例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • springboot @RequestBody 接收字符串实例

    springboot @RequestBody 接收字符串实例

    这篇文章主要介绍了springboot @RequestBody 接收字符串实例,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • JDK动态代理的深入理解与实际应用

    JDK动态代理的深入理解与实际应用

    这篇文章主要介绍了JDK动态代理的深入理解与实际应用,在Java的世界里,JDK的动态代理是一项非常强大且实用的技术,它为我们在运行时动态地创建代理类提供了可能,从而实现对目标对象方法调用的灵活拦截和增强,需要的朋友可以参考下
    2025-02-02
  • java 非常好用的反射框架Reflections介绍

    java 非常好用的反射框架Reflections介绍

    这篇文章主要介绍了java 反射框架Reflections的使用,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • java循环练习的简单代码实例

    java循环练习的简单代码实例

    本篇文章介绍了,java中循环练习的一些简单代码实例。需要的朋友参考下
    2013-04-04
  • spring mvc 和ajax异步交互完整实例代码

    spring mvc 和ajax异步交互完整实例代码

    本篇文章主要介绍了spring mvc 和ajax异步交互完整实例代码,简单的AJAX+SpringMVC的异步交互小例子,有兴趣的可以了解一下。
    2017-02-02
  • Springboot如何读取resources下的json配置文件

    Springboot如何读取resources下的json配置文件

    这篇文章主要介绍了Springboot如何读取resources下的json配置文件问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • MybatisPlus中QueryWrapper常用方法总结

    MybatisPlus中QueryWrapper常用方法总结

    MyBatis-Plus是一个Mybatis增强版工具,在MyBatis上扩充了其他功能没有改变其基本功能,为了简化开发提交效率而存在,queryWrapper是mybatis plus中实现查询的对象封装操作类,本文就给大家总结了MybatisPlus中QueryWrapper的常用方法,需要的朋友可以参考下
    2023-07-07
  • java如何根据模板导出数据到word文档中(表格、自定义标签等)

    java如何根据模板导出数据到word文档中(表格、自定义标签等)

    这篇文章主要介绍了关于java如何根据模板导出数据到word文档中(表格、自定义标签等)的相关资料,主要包括创建docx文档,配置模板信息,以及利用XDocReport+FreeMarker技术进行实现,详细介绍了在Word模板中如何设置字段以及如何通过代码填充这些字段,需要的朋友可以参考下
    2024-11-11
  • Java消息队列RabbitMQ之消息回调详解

    Java消息队列RabbitMQ之消息回调详解

    这篇文章主要介绍了Java消息队列RabbitMQ之消息回调详解,消息回调,其实就是消息确认(生产者推送消息成功,消费者接收消息成功)  , 对于程序来说,发送者没法确认是否发送成功,需要的朋友可以参考下
    2023-07-07

最新评论