Java8 常用Function、Predicate、Consumer、Supplier接口

1.常用函数是接口:

(1)Function<T, R> => R apply(T t) ———— 接受一个输入参数返回一个结果。

Function<Integer, String> function1 = (x) -> "result: " + x;
function1.apply(6);

(2)Consumer<T> => void accept(T t) ———— 代表了接受一个输入参数并且无返回的操作。

Consumer<String> consumer = (x) -> System.out.println("consumer: " + x);
consumer.accept("Hello");

(3)Predicate<T> => boolean test(T t) ———— 接受一个输入参数返回布尔值。

Predicate<String> predicate = (x) -> x.length() > 0;
predicate.test("String");

(4)Supplier<T> => T get() ———— 无输入参数返回一个结果。

Supplier<String> supplier = () -> "Test supplier";
supplier.get();

原文地址:https://www.cnblogs.com/zhoudaxing/p/10972623.html

时间: 2024-10-03 14:38:38

Java8 常用Function、Predicate、Consumer、Supplier接口的相关文章

乐字节-Java8核心特性实战之函数式接口

什么时候可以使用Lambda?通常Lambda表达式是用在函数式接口上使用的.从Java8开始引入了函数式接口,其说明比较简单:函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口. java8引入@FunctionalInterface 注解声明该接口是一个函数式接口. 语法 抽象方法有且仅有一个 接口使用@FunctionalInterface 注解进行标注 接口中可以存在默认方法和静态方法实现 如下形式: /** * 定义函数式

函数式接口的使用 (Function、Predicate、Supplier、Consumer)

参考:https://blog.csdn.net/jmj18756235518/article/details/81490966 函数式接口 定义:有且只有一个抽象方法的接口 Function<T, R>: y = f(x) T: x 输入参数, R: 返回结果,y 所有标注了@FunctionalInterface注解的接口都是函数式接口,所有标注了该注解的接口都将能用在lambda表达式上 特点:通过传入不同的Function,实现了在同一个方法中实现不同的操作,在实际开发中可以大大减少很

【转】Predicate和Consumer接口– Java 8中java.util.function包下的接口

原文链接 http://ifeve.com/predicate-and-consumer-interface-in-java-util-function-package-in-java-8/ 原文链接 作者:   Mohamed Sanaulla  译者: 李璟([email protected]) 早先我写了一篇<函数式接口>,探讨了部分Java 8中函数式接口的用法.我也提及了Predicate接口属于java.util.function包, 在这篇文章中,我将展示如何应用Predicat

Java 常用函数式接口 —— Supplier接口

JDK提供了大量常用的函数式接口以丰富Lambda的典型使用场景,它们主要在 java.util.function 包中被提供. 下面是最简单的Supplier接口及使用示例. Supplier接口概述 // Supplier接口源码 @FunctionalInterface public interface Supplier<T> { /** * Gets a result. * * @return a result */ T get(); } java.util.function.Supp

Function, Predicate, Supplier

Function, Predicate, Supplier的使用 Function用于把一种类型的对象转化为另一种类型的对象.Predicate用于判断某个对象是否符合一定条件. 一.Function和Functions 二.Predicate和Predicates 三.Supplier和Suppliers

java8的4大核心函数式接口

//java8的4大核心函数式接口//1.Consumer<T>:消费性接口//需求:public void happy(double money, Consumer<Double> consumer){ consumer.accept(money);}@Testpublic void test(){ happy(1000,(e)-> System.out.println("happy消费了"+ e +"元"));}//2.Suppli

几种常用的医院地图API接口地址—百度地图

几种常用的医院地图API接口地址,医疗网站上经常使用的来院路线地图,调用第三方平台提供的地图接口,下面是医疗模板库为大家收集整理的几种常用的地图API接口. 1.百度地图: 网址:http://api.map.baidu.com/lbsapi/creatmap/index.html 2.搜狗地图: 网址:http://map.sogou.com/mark/?app=card 3.图吧: 网址:http://union.mapbar.com/onlineTagging.jsp 4.腾讯地图: 网址

Spring8:一些常用的Spring Bean扩展接口

前言 Spring是一款非常强大的框架,可以说是几乎所有的企业级Java项目使用了Spring,而Bean又是Spring框架的核心. Spring框架运用了非常多的设计模式,从整体上看,它的设计严格遵循了OCP----开闭原则,即: 1.保证对修改关闭,即外部无法修改Spring整个运作的流程 2.提供对扩展开放,即可以通过继承.实现Spring提供的众多抽象类与接口来改变类加载的行为 开卷有益,阅读Spring源码(无需每个类都看得很细,大体流程能梳理出来即可)对于个人水平的提升是帮助非常大

java8常用函数式接口 Supplier 、Consumer、Predicate、Function总结

//无输入参数,返回T类型的一个结果. new Supplier<String>() { @Override public String get() { return null; } }; Supplier<String> supplier = () -> "Test supplier"; supplier.get(); //return String | Test supplier //接受一个T类型的参数,无返回. new Consumer<St