Java 8增加了很多强大的功能,流(stream)就是其中之一。现在对api的使用做个说明:

map

对流中的元素做转换,目前jdk提供了mapToInt,mapToLong,mapToDouble转换为对应的流。

 Stream.of("a","b").map(String::toUpperCase).forEach(System.out::println);

>>>>>
A
B
Stream.of("1","2").mapToDouble(Double::valueOf).forEach(System.out::println);
>>>>>>

1.0
2.0

forEach、 forEachOrdered:迭代流的元素并执行action。 两者的区别在:后者在并行的情况下能保证action执行的顺序。

parallel:并行计算,底层采用的folk/join

 Stream.of(1,3,2).parallel().forEachOrdered(System.out::println);
>>>>
1
3
2 Stream.of(1,3,2).parallel().forEach(System.out::println);
>>>>
3
1
2

distinct:去重

sorted:排序

Stream.of(1,3,3,2).distinct().sorted().forEach(System.out::println);
>>>
1
2
3

peek:对流执行一个action

Stream.of(1,3,3,2).filter(i -> i > 2).peek(System.out::println).collect(Collectors.toList());
>>>
3
3

limit:限制流元素的个数

skip:跳过几个元素

 Stream.of(1,3,3,2).skip(2).peek(System.out::println).collect(Collectors.toList());
>>>
3
2
Stream.of(1,3,3,2).limit(2).peek(System.out::println).collect(Collectors.toList());
>>>
1
3

sequential: 串行流,没看出区别

Stream.of(1,3,3,2).sequential().forEach(System.out::println);
toArray():将流转换成数组

Java 8 Stream API说明的更多相关文章

  1. Java 8 Stream API详解--转

    原文地址:http://blog.csdn.net/chszs/article/details/47038607 Java 8 Stream API详解 一.Stream API介绍 Java8引入了 ...

  2. Java 8 Stream API Example Tutorial

    Stream API Overview Before we look into Java 8 Stream API Examples, let’s see why it was required. S ...

  3. Java 8 Stream API

    Java 8 Stream API JDK8 中有两大最为重要的改变.第一个是 Lambda 式:另外 Stream API(java.util.stream.*) Stream 是 JDK8 中处理 ...

  4. Java 8 Stream API具体解释

    Java 8 Stream API具体解释 一.Stream API介绍 Java 8引入了全新的Stream API,此Stream与Java I/O包里的InputStream和OutputStr ...

  5. Java 8 Stream Api 中的 peek 操作

    1. 前言 我在Java8 Stream API 详细使用指南[1] 中讲述了 [Java 8 Stream API]( "Java 8 Stream API") 中 map 操作 ...

  6. Java 使用 Stream API 筛选 List

    前言 上课的时候看到老师用迭代器来遍历 List 中的元素的时候,我的内心是极其嫌弃的,这种迭代方法不能直接访问当前的元素,而且写起来也麻烦.于是上网查了查 Java 有没有类似于 Linq 的东西, ...

  7. Java 8 Stream API的使用示例

    前言 Java Stream API借助于Lambda表达式,为Collection操作提供了一个新的选择.如果使用得当,可以极大地提高编程效率和代码可读性. 本文将介绍Stream API包含的方法 ...

  8. Spring WebFlux 学习笔记 - (一) 前传:学习Java 8 Stream Api (3) - Stream的终端操作

    Stream API Java8中有两大最为重要的改变:第一个是 Lambda 表达式:另外一个则是 Stream API(java.util.stream.*). Stream 是 Java8 中处 ...

  9. Spring WebFlux 学习笔记 - (一) 前传:学习Java 8 Stream Api (2) - Stream的中间操作

    Stream API Java8中有两大最为重要的改变:第一个是 Lambda 表达式:另外一个则是 Stream API(java.util.stream.*). Stream 是 Java8 中处 ...

  10. Spring WebFlux 学习笔记 - (一) 前传:学习Java 8 Stream Api (1) - 创建 Stream

    影子 在学习Spring WebFlux之前,我们先来了解JDK的Stream,虽然他们之间没有直接的关系,有趣的是 Spring Web Flux 基于 Reactive Stream,他们中都带了 ...

随机推荐

  1. 阿里云服务器CentOS7 vsftp安装、设置及后台端口的设置

    查看是否安装vsftp,我这个是已经安装的. [root@localhost vsftpd]# rpm -qa |grep vsftpd vsftpd-3.0.2-11.el7_2.x86_64 如果 ...

  2. 【MySQL】MySQL查询数据库各表的行数

    #倒序查询数据库[各表记录数] use information_schema; select table_name,table_rows from tables where TABLE_SCHEMA ...

  3. 整体C#与Sql培训内容及结构

    图如果看不清可以右键存图片到本地

  4. 让我头疼一下午的Excel合并单元格

    Excel导出常见问题 excel导出其实不算什么难事 在网上copy下模板代码,填充自己的业务数据,提供一个http接口基本就可以得到你要导出的数据了. 但是,凡事都有例外,截止今天,excel导出 ...

  5. Django-jet自定义菜单

    Django-jet自定义菜单:并且可设置权限.https://jet.readthedocs.io/en/latest/config_file.html#custom-menu

  6. Linux系统中的常用命令

    查看日志 cat 或 tail -f 日志文件说明 /var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一 /var/log/secure 与安全 ...

  7. 02Hadoop二次排序2

    案例: 数据: 邮编   |     日期     |金额 ILMN,2013-12-05,97.65GOOD,2013-12-09,1078.14IBM,2013-12-09,177.46ILMN, ...

  8. php -- 类对象调用静态方法

    以前一直以为 静态方法的调用:类名::静态方法 非静态方法的调用:类对象->非静态方法 最近研究一个类,发现一个比较奇怪的问题,用“类对象->静态方法”这种方式居然成功的调用了静态方法.很 ...

  9. Gephi 网络图可视化工具

      官网:         https://gephi.org/   背景:         Gephi 是一款开源,免费, 跨平台的的graph 和 network 可视化工具,同时也提供了数据挖掘 ...

  10. java.lang.NoClassDefFoundError: javax/annotation/Priority

    异常内容: 2017-09-25-15-02 [localhost-startStop-1] [org.springframework.web.context.ContextLoader] [ERRO ...