四大函数式接口-Function

简介: 四大函数式接口

大函数式接口

新时代程序员必回的四种技能:lambda表达式 函数式接口 链式编程  Stream流式计算

什么是函数式接口?

函数式接口:只有一个方法的接口 有且只有一个方法

Runnable接口就是一个典型的函数式接口



@FunctionalInterface  //函数式接口
public interface Runnable {
    public abstract void run(); //有且只有一个方法
}



foreach的参数也是函数式接口,准确来说是消费形类型的函数式接口


forEach(Consumer<? super E> action)



使用函数式接口有什么优势?

简化编程模型,在新版本框架底层大量应用


四大函数式接口

四大函数式接口都是java.util.function下的

  1. Function 函数式接口
通过Function源码可以发现,它是一个函数式接口,只有一个方法apply(),而且是传入参数T,返回类型R


image.png

创建一个函数式接口Function


public static void main(String[] args){
//匿名内部类
    Function function = new Function<String,String>() {
        @Override
public String apply(String str) {
return null;
        }
    };
}


完善代码


package com.wyh.function;
import java.util.function.Function;
/**
 * @program: JUC
 * @description: 函数式接口
 * @author: 魏一鹤
 * @createDate: 2022-03-06 15:06
 **/
public class demo01 {
public static void main(String[] args){
//工具类 输入什么 输出什么
        Function function = new Function<String,String>() {
            @Override
public String apply(String str) {
return str;
            }
        };
        System.out.println(function.apply("123"));
    }
}
@FunctionalInterface
public interface Function<T, R> {
/**
     * Applies this function to the given argument.
     *
     * @param t the function argument
     * @return the function result
     */
    R apply(T t);
}


123

Function的特点:有一个输入参数,有一个输出参数,凡是函数式接口,都可以用lambda表达式进行简化
使用lambda表达式对函数式接口进行简化


//使用lambda表达式对函数式接口进行简化

Function<String,String> function=(str)->{return str;};

System.out.println(function.apply("123"));

目录
相关文章
|
5月前
|
API
JDK8函数式接口之Function
JDK8函数式接口之Function
51 0
|
9月前
|
Java
1.3 Lambda表达式的基础:常用的函数式接口:Predicate、Consumer、Function等
1.3 Lambda表达式的基础:常用的函数式接口:Predicate、Consumer、Function等
48 0
|
11月前
|
Java
JAVA中函数式接口-------Function ,BiFunction计算转换接口
JAVA中函数式接口-------Function ,BiFunction计算转换接口
|
12月前
常用函数式接口:Consumer、Predicate、Function的方法说明解练习
常用函数式接口:Consumer、Predicate、Function的方法说明解练习
68 0
|
12月前
|
Java 程序员 Go
Java 8 - 03 Lambda 函数式接口Predicate & Consumer & Function & Supplier
Java 8 - 03 Lambda 函数式接口Predicate & Consumer & Function & Supplier
82 0
Java8中的函数式接口详解(Supplier、Consumer、Predicate、Function)
Java8中的函数式接口详解(Supplier、Consumer、Predicate、Function)
624 1
|
Oracle Java 关系型数据库
【Java8新特性】04 详解Lambda表达式中Predicate Function Consumer Supplier函数式接口
【Java8新特性】04 详解Lambda表达式中Predicate Function Consumer Supplier函数式接口
|
Java API 数据安全/隐私保护
【小家java】java8新特性之---函数式接口(Supplier、Consumer、Predicate、Function、UnaryOperator,通往高阶设计的好工具)(上)
【小家java】java8新特性之---函数式接口(Supplier、Consumer、Predicate、Function、UnaryOperator,通往高阶设计的好工具)(上)
【小家java】java8新特性之---函数式接口(Supplier、Consumer、Predicate、Function、UnaryOperator,通往高阶设计的好工具)(上)
【小家java】java8新特性之---函数式接口(Supplier、Consumer、Predicate、Function、UnaryOperator,通往高阶设计的好工具)(下)
【小家java】java8新特性之---函数式接口(Supplier、Consumer、Predicate、Function、UnaryOperator,通往高阶设计的好工具)(下)
|
Java
Java 8 函数式接口java.util.function速查汇总
Java 8 函数式接口java.util.function速查汇总
171 0

热门文章

最新文章