java新特性stream,也称为流式编程。

在学习stream之前先了解一下java内置的四大函数

第一种函数式函数,后面是lambda表达式写法

     /*Function<String,Integer> function = new Function<String, Integer>() {
@Override
public Integer apply(String s) {
return null;
}
};*/
//函数式 有请求参数和返回值
Function<String, Integer> function = s -> {
return 1024;
};
System.out.println(function.apply("函数式"));

第二种布尔型函数(断定型参数)

     /*  Predicate<String> predicate = new Predicate<String>() {
@Override
public boolean test(String s) {
return false;
}
};*/
//布尔型函数(断定型参数) 有请求参数和返回boolean值
Predicate<String> predicate = s -> {
return s.isEmpty();
};
System.out.println(predicate.test("sss"));

第三种消费型函数

/*  Consumer<String> consumer = new Consumer<String>() {
@Override
public void accept(String s) { }
};*/
//消费型函数 有请求参数和无返回值
Consumer<String> consumer = s -> {
System.out.println(s);
};
consumer.accept("java ");

第四种

     /*Supplier<String> supplier = new Supplier() {
@Override
public String get() {
return null;
}
   };*/ //供给型函数 无请求参数和有返回值
Supplier<String> supplier = ()-> {
return "hello";
};
System.out.println(supplier.get()); }

我们再看一下stream常用方法:

filter:里面传入一个Predicate布尔型函数,里面返回布尔值
Stream<T> filter(Predicate<? super T> predicate)
forEach:里面传入Consumer消费型函数,有请求参数和无返回值
void forEach(Consumer<? super T> action)
map:里面传入Function函数式 有请求参数和返回值
<R> Stream<R> map(Function<? super T,? extends R> mapper)
generate:里面传入Supplier供给型函数 无请求参数和有返回值
static <T> Stream<T> generate(Supplier<T> s)

待更。

java新特性stream的更多相关文章

  1. JDK1.8新特性——Stream API

    JDK1.8新特性——Stream API 摘要:本文主要学习了JDK1.8的新特性中有关Stream API的使用. 部分内容来自以下博客: https://blog.csdn.net/icarus ...

  2. Java8 新特性 Stream 无状态中间操作

    无状态中间操作 Java8 新特性 Stream 练习实例 中间无状态操作,可以在单个对单个的数据进行处理.比如:filter(过滤)一个元素的时候,也可以判断,比如map(映射)... 过滤 fil ...

  3. Java8 新特性 Stream() API

    新特性里面为什么要加入流Steam() 集合是Java中使用最多的API,几乎每一个Java程序都会制造和处理集合.集合对于很多程序都是必须的,但是如果一个集合进行,分组,排序,筛选,过滤...这些操 ...

  4. 主流的单元测试工具之-JAVA新特性-Annotation 写作者:组长 梁伟龙

    1:什么是Annotation?Annotation,即“@xxx”(如@Before,@After,@Test(timeout=xxx),@ignore),这个单词一般是翻译成元数据,是JAVA的一 ...

  5. Hi java新特性

    java新特性 1995.5.23 java语言 1996 jdk1.0 250个类在API 主要用在桌面型应用程序1997 jdk1.1 500 图形用户界面编程1998 jdk1.2 2300 J ...

  6. 主流的单元测试工具之-JAVA新特性-Annotation

    1:什么是Annotation?Annotation,即“@xxx”(如@Before,@After,@Test(timeout=xxx),@ignore),这个单词一般是翻译成元数据,是JAVA的一 ...

  7. Java8 新特性 Stream 非短路终端操作

    非短路终端操作 Java8 新特性 Stream 练习实例 非短路终端操作,就是所有的元素都遍厉完,直到最后才结束.用来收集成自己想要的数据. 方法有: 遍厉 forEach 归约 reduce 最大 ...

  8. Java8 新特性 Stream 短路终端操作

    短路终端操作 Java8 新特性 Stream 练习实例 传入一个谓词,返回传为boolean,如果符合条件,则直接结束流. 匹配所有 allMatch 任意匹配 anymMatch 不匹配 none ...

  9. Java基础学习总结(55)——java8新特性:stream

    java作为开发语言中的元老已经度过了很多年,最新的java8为我们带来了一些新特性,这些特性可以在以后的工作中为我们的开发提供更多的便捷,现在就让我们看看最新的函数式编程风格怎么在实际的开发中使用. ...

随机推荐

  1. C# LINQ标准查询操作符

    首先添加数据集合 [Serializable] public class Racer : IComparable<Racer>, IFormattable { public Racer() ...

  2. 2 使用unitest 模块扩展功能测试

    准备做一个 待办事项清单网站,来演示 Web 开发过程中的所有主要步骤.以及如何在各个步骤中运用TDD理念. ”功能测试“: 从用户的角度查看应用是如何运作的. 从某种程度上可以作为应用的说明书. 作 ...

  3. Girls and Boys POJ - 1466 【(二分图最大独立集)】

    Problem DescriptionIn the second year of the university somebody started a study on the romantic rel ...

  4. PHP mysqli_debug() 函数

    定义和用法 mysqli_debug() 函数用于执行调试操作. 注释:为了使用该函数,您必须编译 MySQL 客户端库来支持调试.

  5. linux安装maven简易步骤

    版本要求maven3.6.1 软件下载 wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.1/binaries/apache-maven-3 ...

  6. pod package 生成 Framework

    pod package 生成 Framework pod package 是 cocoapods 的一个插件,如果没有的话使用以下命令安装: sudo gem install cocoapods-pa ...

  7. An error occurred while starting a transaction on the provider connection. See the inner exception for details.

    用EntityFramework循环操作数据时,报了如下错误 An error occurred while starting a transaction on the provider connec ...

  8. Sql中truncate,delete以及drop的比较

    相同点: 1.truncate和不带where子句的delete.以及drop都会删除表内的数据. 2.drop.truncate都是DDL语句(数据定义语言),执行后会自动提交. 不同点: 1. t ...

  9. Centos7.4.1708安装Jumpserver

    Jumpserver 环境要求:硬件配置: 2个CPU核心, 4G 内存, 50G 硬盘(最低)操作系统: Linux 发行版 x86_64Python = 3.6.xMysql Server ≥ 5 ...

  10. jpa 总结

    转:http://blog.csdn.net/linzhiqiang0316/article/details/52639265 先来介绍一下JPA中一些常用的查询操作: //And --- 等价于 S ...