Java8 新特性 Stream() 创建流
通过Controllere类的Stream()和parallelStream()创建流
//通过集合创建流
@Test
public void test1() {
String arr[] = new String[]{"a", "b", "c"};
//把数组转换成集合
List<String> list = Arrays.asList(arr);
//生成stream流(串行流)
Stream<String> stream = list.stream();
//生成并行流
Stream<String> stringStream = list.parallelStream();
}
通过数组创建流
@Test
public void test2() {
String arr[] = new String[]{"a", "b", "c"};
//通过数据里面的stream()方法来创建的
Stream<String> stream = Arrays.stream(arr);
//通过Stream类的静态方法创建方法
Stream<String> arr1 = Stream.of(arr);
}
创建一个空的流
@Test
public void test3() {
//创建一个空流
Stream<Object> empty = Stream.empty();
}
无限流
@Test
public void test4() {
//生成一个全是G的无限流
//参数是一个supplier函数式接口,不接收参数,只管生产
//可以根据自己的要求来创建流
Stream<String> generate = Stream.generate(() -> "G");
System.out.println("生成5个全是G的流:");
generate.limit(5).forEach(System.out::println);
//生成一个
//根据初始化生成的值,最后的一个输出的是2的9次方
Stream<Integer> iterate = Stream.iterate(1, (x) -> x * 2);
iterate.limit(10).forEach(System.out::println);
/**
* 1
* 2
* 4
* 8
* 16
* 32
* 64
* 128
* 256
* 512
*/
}
细节决定成败!
个人愚见,如有不对,恳请扶正!
Java8 新特性 Stream() 创建流的更多相关文章
- Java8 新特性 Stream() API
新特性里面为什么要加入流Steam() 集合是Java中使用最多的API,几乎每一个Java程序都会制造和处理集合.集合对于很多程序都是必须的,但是如果一个集合进行,分组,排序,筛选,过滤...这些操 ...
- Java8 新特性 Stream 无状态中间操作
无状态中间操作 Java8 新特性 Stream 练习实例 中间无状态操作,可以在单个对单个的数据进行处理.比如:filter(过滤)一个元素的时候,也可以判断,比如map(映射)... 过滤 fil ...
- Java8 新特性 Stream 非短路终端操作
非短路终端操作 Java8 新特性 Stream 练习实例 非短路终端操作,就是所有的元素都遍厉完,直到最后才结束.用来收集成自己想要的数据. 方法有: 遍厉 forEach 归约 reduce 最大 ...
- Java8 新特性 Stream 短路终端操作
短路终端操作 Java8 新特性 Stream 练习实例 传入一个谓词,返回传为boolean,如果符合条件,则直接结束流. 匹配所有 allMatch 任意匹配 anymMatch 不匹配 none ...
- 这可能是史上最好的 Java8 新特性 Stream 流教程
本文翻译自 https://winterbe.com/posts/2014/07/31/java8-stream-tutorial-examples/ 作者: @Winterbe 欢迎关注个人微信公众 ...
- Java8新特性Stream流应用示例
Java8新特性介绍 过滤集合 List<String> newList = list.stream().filter(item -> item != null).collect(C ...
- java8新特性--Stream的基本介绍和使用
什么是Stream? Stream是一个来自数据源的元素队列并可以进行聚合操作. 数据源:流的来源. 可以是集合,数组,I/O channel, 产生器generator 等 聚合操作:类似SQL语句 ...
- Java8 新特性 Stream 练习实例
练习实例 配合Java8 新特性 Steam() API 使用 //没有写get set 构造方法 public class Sku { private Integer skuId; private ...
- java8新特性——stream笔记
stream对象 Stream IntStream LongStream DoubleStream 创建 常用的三种方式: 使用list对象: list.stream() − 为集合创建串行流. li ...
随机推荐
- 安装使用 superset
安装 superset 创建虚拟环境: python -m venv msuperset 激活虚拟环境: cd msuperset source bin/activate 安装 superset pi ...
- EntityFrameworkCore(efcore)在与 MySQL 连接使用中的问题
请直接使用第三方驱动: Pomelo.EntityFrameworkCore.MySql(https://github.com/PomeloFoundation/Pomelo.EntityFramew ...
- logstash 入门篇
场景介绍 基于分布式集群海量日志数据,且分布在不同的服务器上,日志的采集以及可视化是需要我们解决的问题.ELK就是这么一个方案,当然我们这里主要讲解logstash安装配置和基础语法. ELK帮我们解 ...
- afnet缓存
http://www.open-open.com/code/view/1432299750333
- 谈谈<? extends T> 和<? super T>理解
项目中遇到<? extends T> 和<? super T> 这两者,来说说自己的理解.首先我们先了解什么是泛型 什么是泛型 泛型是在编译阶段一种防止错误对象输入的机制.编译 ...
- Properties类按顺序输出加载内容
Properties类按顺序输出加载内容 最近手写工厂的时候,遇到了加载配置文件时不按照properties文件中的数据的顺序来加载. 一.问题代码 import java.io.IOExceptio ...
- C# Winform ProgressBar+Labe 联动显示进度
private void btnCount_Click(object sender, EventArgs e) { label1.Visible=true; progressBar.Visible = ...
- odoo10学习笔记八:qweb引擎
转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/11189307.html 一:简介 QWeb是一个基于xml的模板引擎,用于生成HTML片段和页面,模板指令是 ...
- Rust中的哈希Map
严谨! fn main() { use std::collections::HashMap; let mut scores = HashMap::new(); scores.insert(String ...
- 初识V4L2(一)
V4L2驱动框架概述 V4L2(video for linux two)是linux为视频设备提供的一套标准接口.它也属于字符设备驱动程序. 首先回顾普通字符设备驱动程序的写法: app : ...