美文网首页
JDK8的新特性-Stream

JDK8的新特性-Stream

作者: codingBen | 来源:发表于2018-07-19 15:17 被阅读0次
Java8新特性

为什么需要引入Stream?

Stream 作为 Java 8 的一大亮点,它与 java.io 包里的 InputStream 和 OutputStream 是完全不同的概念。它也不同于 StAX 对 XML 解析的 Stream,也不是 Amazon Kinesis 对大数据实时处理的 Stream。Java 8 中的 Stream 是对集合(Collection)对象功能的增强,它专注于对集合对象进行各种非常便利、高效的聚合操作(aggregate operation),或者大批量数据操作 (bulk data operation)。Stream API 借助于同样新出现的 Lambda 表达式,极大的提高编程效率和程序可读性。同时它提供串行和并行两种模式进行汇聚操作,并发模式能够充分利用多核处理器的优势,使用 fork/join 并行方式来拆分任务和加速处理过程。通常编写并行代码很难而且容易出错, 但使用 Stream API 无需编写一行多线程的代码,就可以很方便地写出高性能的并发程序。所以说,Java 8 中首次出现的 java.util.stream 是一个函数式语言+多核时代综合影响的产物。

Stream使用用途:

1. Filter方法:以前要统计list内数据的个数必须采用外部迭代的形式来操作,for循环操作其实是调用迭代接口进行而已,而java给我们提供了通过Stream的filter方法,其实stream还提供了map,flatMap,max,min等方法。

2.map方法:map提供了将list内数据转换的功能,数据转换在java8前我们会将一个list馁的数据转换后放入另一个list,但是java中只需要作一个map.

3.flatmap方法: 可以将多个stream合并为一个stream再进行操作,flatMap方法返回一个stream

4.Max方法和Min方法则是通过Stream找出list内最大值和最小值。

相关文章

  • Stream API

    1. Stream API 简介 Stream API是 JDK8 的新特性,这种风格将要处理的元素集合看作一种流...

  • JDK8stream将list转Map对象报错java.lang

    ​ JDK8有很多新特性,比如lambda表达式,函数式编程以及stream流的使用,这几个新特性,使用过之后就爱...

  • JDK8中的stream.reduce方法

    作为JDK8新特性之一,stream引入了许多新的方法,reduce就是其中一种。 Reduction 操作 首先...

  • Guli的技术点

    jdk8的新特性有那些: 项目使用到的stream流操作 常用方法以及示例:https://www.jianshu...

  • JDK8的新特性-Stream

    为什么需要引入Stream? Stream 作为 Java 8 的一大亮点,它与 java.io 包里的 Inpu...

  • JDK8新特性之Stream

    Java 8 API添加了一个新的抽象称为流Stream,可以让你以一种声明的方式处理数据。Stream 使用一种...

  • JDK8新特性Stream流

    1. Stream流的出现原因 我们操作集合的时候有时候十分麻烦,如下 上面的集合操作数据的时候,每一个需求都需要...

  • JDK8新特性介绍

    JDK8新特性介绍 JDK8新特性:​ 1,Lambda表达式​ 2,新的日期API​ 3,引入Optional​...

  • java stream使用指南-------sorted使用及进

    引入 用了一段时间的jdk8的新特性,lambda表达式、方法引用、stream流,用起来是真的顺手啊,最近碰到了...

  • java8 :: 用法 (JDK8 双冒号用法)

    特性 jdk8中使用了::的用法。就是把方法当做参数传到stream内部,使stream的每个元素都传入到该方法里...

网友评论

      本文标题:JDK8的新特性-Stream

      本文链接:https://www.haomeiwen.com/subject/jqltmftx.html