美文网首页Java 8 新特性
Java 8 函数式接口(一) 概述

Java 8 函数式接口(一) 概述

作者: 爱恨_交加 | 来源:发表于2021-12-29 17:17 被阅读0次

定义

有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。

可以在任意函数式接口上使用@FunctionalInterface注解,以检查它是否是一个函数式接口

意义

Lambda表达式配合函数式接口可以写出更加简洁、灵活的代码

简单示例

需求:使用函数式接口和 Lambda 表达式实现对字符串的处理功能。

先定义一个函数式接口

...
@FunctionalInterface
public interface MyStrFunc<T> {
    // 核心方法
    void accept(T t);

    // 默认方法(可以省略)
    default void defaultFunc() {
        System.out.println("不会影响到函数式接口的定义");
    }
    // 静态方法(可以省略)
    static void staticFunc(){
        System.out.println("不会影响到函数式接口的定义");
    }
}

接着定义字符串处理方法并测试其功能

...
public class TestDemo {
    /** 测试 */
    public static void main(String[] args) {
        // 输出字符串长度
        handleString("123456", s -> {System.out.println(s.length());});
        // 输出拼接后的字符串
        handleString("123456", s -> {System.out.println(s + "7890");});
    }
    /** 定义操作方法 */
    public static void handleString(String str, MyStrFunc<String> myStrFunc){
        myStrFunc.accept(str);
    }
}

输出

6
1234567890

在这里,其实 handleString 方法中的代码段myStrFunc.accept(str);相当于 main 方法中的代码段{System.out.println(s.length());}{System.out.println(s + "7890");}

下一节:Java 8 函数式接口(二) 分析、归纳内置的函数式接口

相关文章

  • Java8-Functional Interfaces函数式接口

    Java8-Functional Interfaces函数式接口 1 Java 8-概述2 Java 8 - La...

  • Java 8 Function函数式接口

    Java 8 Function函数式接口 介绍 函数式接口其实就是一个抽象接口类,在Java 8之前已有的函数式接...

  • Java 8 函数式接口(二) 分析、归纳内置的函数式接口

    概述内置的函数式接口 注意:这里只讨论java.util.function包中的函数式接口。java.lang.R...

  • Java 8 新特性概述

    Java 8 新特性概述 转载自 唐学波, 林宝川, 和 俞顺杰 Java 8 新特性概述 1. 函数式接口 Ja...

  • JAVA8函数式接口学习

    JAVA8函数式接口 函数式接口是java8的一种新特性,函数式接口定义了且只定义了一个抽象方法!该接口非常有用,...

  • 函数式接口

    概述 java8中新增了 @FunctionalInterface 注解表示函数式接口,用注解@Functiona...

  • 2020-07-18函数式接口

    函数式接口概述 函数式接口:有且仅有一个抽象方法的接口java中的函数式编程体现的就是Lambda表达式,所以函数...

  • Java 8 函数式接口(一) 概述

    定义 有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。 可以在任意函数式接口上使用@FunctionalIn...

  • Java 函数式接口

    Java 函数式接口 这个术语首先出自于 Java 8。Java 里的函数式接口 指的是一个接口只包含一个抽象方法...

  • Java8-函数式接口

    什么是函数式接口 ​ Java 8引入了函数式接口的概念 ​ 1). 只包含一个抽象方法的接口,称为函数式...

网友评论

    本文标题:Java 8 函数式接口(一) 概述

    本文链接:https://www.haomeiwen.com/subject/mbwvqrtx.html