Java 8 API Stream让List操作更便捷
Java8新增的API Strem(流),没用过的同学可能不知道它是做什么的,下面我们就来说说Stream给我们带来的好处,它能让我们更便捷的对集合做操作,以往我们在对集合做数据过滤,排序,数据聚合,集合转换与不同数据类型之间的转换 操作的时候都要写很多繁琐的代码来处理,自从Strem的出现我们无需再去写麻烦的处理逻辑,以前可能几行,几十行代码现在一行代码即可解决。
在 Java 8 中, 集合接口有两个方法来生成流:
stream() − 为集合创建串行流。
parallelStream() − 为集合创建并行流。
1.过滤掉List中为空的数据。
List<String> strings = Arrays.asList("a", "", "b", "c", "d","", "e");
List<String> filtered = strings.stream().filter(string -> !string.isEmpty()).collect(Collectors.toList());
2.list中每个值乘以2,map方法还可以做不同泛型List数据之间的转换。
List<Integer> numbers = Arrays.asList(3, 2, 2, 3, 7, 3, 5);
List<Integer> squaresList = numbers.stream().map( i -> i*2).collect(Collectors.toList());
3.做数据聚合操作
List<String> strings = Arrays.asList("a", "", "b", "c", "d","", "e");
int count = strings.stream().filter(string -> string.isEmpty()).count();
点亮 ,告诉大家你也在看
Java 8 API Stream让List操作更便捷相关推荐
- 腾讯千帆河洛SSP场景连接近期更新概况:视觉跃升,操作更便捷
更新概况 新增应用:腾讯云邮件 推荐模板:每天定时发送腾讯云邮件 定时查询维格表,发送腾讯云邮件,并将发送回执信息更新到维格表. 更新应用:企业微信自建应用接收文本消息 新增应用:文本处理 推荐模板: ...
- java跳骚市场的代码,Java常用API包及骚操作
lombok(@data) https://my.oschina.net/darkness/blog/510808 ReflectionToStringBuilder//不用写toString了 st ...
- JAVA中流(Stream)的操作
流是一次性的,用过之后会自动关闭. 一.IntStream.DoubleStream和Stream import java.util.Arrays; import java.util.List; im ...
- 【Java】Java函数式编程以及流的操作
文章目录 大纲 lambda表达式 一般内部类 局部内部类 匿名内部类 基于函数式接口的lambda表达式 JDK8中自带的函数式接口 Predicate判断 Consumer消费 Supplier供 ...
- java peek函数_Java 8 Stream Api 中的 peek 操作
1. 前言 我在 Java 8 Stream API中的 map 和flatMap 中讲述了Java8 Stream API中 map 操作和 flatMap 操作的区别.然后有小伙伴告诉我 peek ...
- Java Stream的流操作,居然让我的代码越写越丝滑?
概念 Stream将要处理的元素集合看作一种流,在流的过程中,借助Stream API对流中的元素进行操作,比如:筛选.排序.聚合等. Stream` 的操作符大体上分为两种:`中间操作符`和`终止操 ...
- Java 8 - Stream流骚操作解读2_归约操作
文章目录 Pre 什么是归约操作 元素求和 reduce reduce如何运行的 最大值和最小值 Pre Java 8 - Stream流骚操作解读见到过的终端操作都是返回一个 boolean ( a ...
- java 两个stream合并_Java Stream 流如何进行合并操作
1. 前言 Java Stream Api 提供了很多有用的 Api 让我们很方便将集合或者多个同类型的元素转换为流进行操作.今天我们来看看如何合并 Stream 流. 2. Stream 流的合并 ...
- 使用EJB3 Java 持久化API来标准化Java的持久化操作
本文转载自[url]http://blog.csdn.net/dl88250/archive/2007/11/01/1860462.aspx[/url] 持久化对于大部分企业应用来说都是至关重要的,因 ...
最新文章
- 从 Vue 1.x 迁移 — Vue.js
- java如何打开整个package_Qulice - 如何在整个项目中禁用需要package-info.java的规则?...
- 192.168.8.1手机登陆_192.168.1.1手机登陆
- 【可视化】数据仓库与数据挖掘大作业
- win10(win8)上安装miniTool后出现请手动安装fastboot驱动问题
- 定时任务时间表达式规则
- C# 压缩解压Zip文件
- 计算机程序员求职信英语作文,电脑程序员英文求职信
- 大数据分析如何利用Python创建数据透视表
- c# 操作Word总结(四)——书签使用
- C++ ISBN 号码
- 腾讯市值首破5000亿美元;阿里224亿港币入股高鑫零售;特斯拉新超跑在华接受预定丨价值早报
- 计算机处理器天梯,cpu天梯图2020_笔记本cpu天梯排名图2020
- Phython环境搭建
- Android 快速为背景添加方格线
- 一个程序员的奋斗txt
- 企业级360用户画像
- 抽奖系统小程序,多方式真实展示抽奖功能
- 阿里云发布全新开源操作系统『龙蜥』,支持 X86 64 和 ARM 64 架构及鲲鹏、飞腾等芯片...
- java使用poi操作world生成饼图,柱状图,折线图,组合图:一