java_函数式接口

文章目录

一、什么是函数式接口

  • 如果一个接口只有一个抽象方法,那么该接口就是一个函数式接口
  • 函数式接口的实例可以通过 lambda 表达式方法引用 或者构造方法引用来创建
  • 如果我们在某个接口上声明了 @FunctionalInterface 注解,那么编译器就会按照函数式接口的定义来要求该接口

二、四大核心函数式接口

函数式接口 称谓 参数类型 用途
Consumer<T> 消费型接口 T 对类型为T的对象应用操作,包含方法: void accept(T t)
Supplier<T> 供给型接口 返回类型为T的对象,包含方法:T get()
Function<T, R> 函数型接口 T 对类型为T的对象应用操作,并返回结果。结果是R类型的对象。包含方法:R apply(T t)
Predicate<T> 判断型接口 T 确定类型为T的对象是否满足某约束,并返回 boolean 值。包含方法:boolean test(T t)

三、使用举例

java 复制代码
public class One {

    public static void main(String[] args) {
        consumMoney(2000,x-> System.out.println("这个手机是:"+x+"元"));
    }

    public static void consumMoney(int money, Consumer consumer){
        consumer.accept(money);
    }

}

结果:

在上述例子中,main方法中调用了consumMoney方法,传入了两个参数;consumer的实现形式 就是x-> System.out.println("这个手机是:"+x+"元"),即:传入一个参数x,然后拼接输出。在consumMoney方法中调用accept方法,按照预定实现形式输出结果。

相关推荐
碳基硅坊1 天前
Spring AI:把大模型接进 Spring 应用
java·人工智能·spring ai
黄毛火烧雪下1 天前
Java 核心知识点总结(一)
java·开发语言
技术小结-李爽1 天前
【工具】Maven的下载、安装、使用
java·maven
极创信息1 天前
Linux挖矿病毒深度清理实战教程,从进程隐藏、Rootkit驻留到彻底根除
java·大数据·linux·运维·安全·tomcat·健康医疗
努力成为AK大王1 天前
并发编程的核心挑战、优化方案与核心知识点总结
java·开发语言·数据库
云烟成雨TD1 天前
Agent Scope Java 2.x 系列【10】技能(Skill)
java·人工智能·agent
摇滚侠1 天前
SpringMVC 入门到实战 DispatcherServlet 源码解读 92-95
java·后端·spring·maven·intellij-idea
键盘歌唱家1 天前
Spring AI 入门分享:它和“直接调 API“到底差在哪
java·人工智能·spring
宸丶一1 天前
Day 10:LangGraph - Agent 的图执行引擎
java·windows·python
hikktn1 天前
Excel 导出 OOM 预防实战:30 万行从堆溢出到 50MB 的演进
java·excel·easyexcel