经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » Java相关 » Java » 查看文章
JDK8新特性——Stream API
来源:cnblogs  作者:鲨猫  时间:2019/6/12 12:59:53  对本文有异议

JDK8新特性——Stream API

摘要:本文主要学习了JDK8的新特性中有关Stream API的使用。

部分内容来自以下博客:

https://blog.csdn.net/icarusliu/article/details/79495534

概述

Stream API(java.util.stream)把真正的函数式编程风格引入到Java中。这是目前为止对Java类库最好的补充,因为Stream API可以极大提供Java程序员的生产力,让程序员写出高效率、干净、简洁的代码。

Stream是JDK8中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。使用Stream API对集合数据进行操作,就类似于使用SQL执行的数据库查询。也可以使用Stream API来并行执行操作。简言之,Stream API提供了一种高效且易于使用的处理数据的方式。

创建

创建空的Stream对象

  1. 1 Stream stream = Stream.empty();

通过集合类中的stream()方法或者parallelStream()方法创建

  1. 1 List<String> list = Arrays.asList("a", "b", "c", "d");
  2. 2 Stream stream = list.stream();// 获取串行的Stream对象
  3. 3 Stream parallelStream = list.parallelStream();// 获取并行的Stream对象

通过数组工具类Arrays的stream()方法创建

  1. 1 String[] arr = {"a", "b", "c", "d"};
  2. 2 Stream<String> stream = Arrays.stream(arr);

通过Stream中的of()方法创建

  1. 1 Stream stream = Stream.of("test");
  2. 2 Stream stream = Stream.of("a", "b", "c");

通过Stream中的iterate()方法创建有序的Stream

  1. 1 public static<T> Stream<T> iterate(final T seed, final UnaryOperator<T> f);

通过Stream中的generate()方法创建无序的Stream

  1. 1 public static<T> Stream<T> generate(Supplier<T> s);

使用

Stream对象提供多个非常有用的方法,这些方法可以分成两类:

中间操作:将原始的Stream转换成另外一个Stream,如filter返回的是过滤后的Stream。

终端操作:产生的是一个结果或者其它的复合操作,如count或者forEach操作。

未完待补充……

原文链接:http://www.cnblogs.com/shamao/p/11008557.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号