Java8中Stream的一些神操作


Posted in Java/Android onNovember 02, 2021

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

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

Java8中Stream的一些神操作

Java8中Stream的一些神操作

Java8中Stream的一些神操作

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神操作内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Java/Android 相关文章推荐
Java实战之用Swing实现通讯录管理系统
Jun 13 Java/Android
Java Optional<Foo>转换成List<Bar>的实例方法
Jun 20 Java/Android
springBoot基于webSocket实现扫码登录
Jun 22 Java/Android
idea搭建可运行Servlet的Web项目
Jun 26 Java/Android
Java多条件判断场景中规则执行器的设计
Jun 26 Java/Android
图解排序算法之希尔排序Java实现
Jun 26 Java/Android
Mybatis是这样防止sql注入的
Dec 06 Java/Android
java如何实现获取客户端ip地址的示例代码
Apr 07 Java/Android
Java详细解析==和equals的区别
Apr 07 Java/Android
Java版 单机五子棋
May 04 Java/Android
java版 联机五子棋游戏
May 04 Java/Android
SpringBoot使用ip2region获取地理位置信息的方法
Jun 21 Java/Android
springboot如何接收application/x-www-form-urlencoded类型的请求
Nov 02 #Java/Android
Java 在生活中的 10 大应用
Nov 02 #Java/Android
使用Spring处理x-www-form-urlencoded方式
Nov 02 #Java/Android
Java 实现限流器处理Rest接口请求详解流程
Java8中接口的新特性使用指南
Nov 01 #Java/Android
Spring中的使用@Async异步调用方法
Nov 01 #Java/Android
MyBatis自定义SQL拦截器示例详解
Oct 24 #Java/Android
You might like
ThinkPHP在新浪SAE平台的部署实例
2014/10/31 PHP
Laravel5.1 框架Middleware中间件基本用法实例分析
2020/01/04 PHP
javascript新手语法小结
2008/06/15 Javascript
扩展javascript的Date方法实现代码(prototype)
2010/11/20 Javascript
js函数排序的实例代码
2013/07/01 Javascript
php与js的区别是什么
2013/08/05 Javascript
JavaScript按位运算符的应用简析
2014/02/04 Javascript
原生javascript实现获取指定元素下所有后代元素的方法
2014/10/28 Javascript
对比分析json及XML
2014/11/28 Javascript
jQuery实现拖动调整表格单元格大小的代码实例
2015/01/13 Javascript
今天抽时间给大家整理jquery和ajax的相关知识
2015/11/17 Javascript
浅谈jQuery this和$(this)的区别及获取$(this)子元素对象的方法
2016/11/29 Javascript
微信小程序中添加客服按钮contact-button功能
2018/04/27 Javascript
详解angular分页插件tm.pagination二次触发问题解决方案
2018/07/20 Javascript
详解Vue取消eslint语法限制
2018/08/04 Javascript
Vue开发实现吸顶效果的示例代码
2018/08/21 Javascript
require.js 加载过程与使用方法介绍
2018/10/30 Javascript
详解基于node.js的脚手架工具开发经历
2019/01/28 Javascript
[46:00]Ti4 冒泡赛第二轮LGD vs C9 2
2014/07/14 DOTA
python初学之用户登录的实现过程(实例讲解)
2017/12/23 Python
Python脚本完成post接口测试的实例
2018/12/17 Python
详解Python装饰器
2019/03/25 Python
Django视图扩展类知识点详解
2019/10/25 Python
python主线程与子线程的结束顺序实例解析
2019/12/17 Python
Python+pyftpdlib实现局域网文件互传
2020/08/24 Python
Nike台湾官方商店:Nike.com (TW)
2017/08/16 全球购物
自我鉴定思想方面
2013/10/07 职场文书
给酒店员工的表扬信
2014/01/11 职场文书
三八红旗集体先进事迹材料
2014/05/22 职场文书
厨师长岗位职责范本
2014/08/25 职场文书
2014年工人工作总结
2014/11/25 职场文书
2015年基层党建工作总结
2015/05/14 职场文书
2016年三八节红领巾广播稿
2015/12/17 职场文书
为什么MySQL分页用limit会越来越慢
2021/07/25 MySQL
在CSS中使用when/else的方法
2022/01/18 HTML / CSS
如何使用注解方式实现 Redis 分布式锁
2022/07/23 Redis