Java8中Stream的一些神操作
投稿:daisy
Stream是Java8中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作,这篇文章主要给大家介绍了Java8中Stream的一些神操作,需要的朋友可以参考下
Java8对集合提供了一种流式计算的方式,这种风格将要处理的元素集合看 作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如 筛选, 排序,聚合等。
Stream API 基本都是返回Stream本身,这样多个操作可以串联成一个管 道, 如同流式风格(fluent style)。 这样做可以对操作进行优化, 比 如延迟执行(laziness)和短路( short-circuiting)
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神操作内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!