当前位置: 首页 > news >正文

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)

三、使用举例

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方法,按照预定实现形式输出结果。

http://www.lryc.cn/news/239511.html

相关文章:

  • 解决selenium访问网页中多个iframe,导致无法锁定元素的问题
  • MySQL大表设计
  • 6.基于蜻蜓优化算法 (DA)优化的VMD参数(DA-VMD)
  • OpenCV [c++](图像处理基础示例小程序汇总)
  • 集成多元算法,打造高效字面文本相似度计算与匹配搜索解决方案,助力文本匹配冷启动[BM25、词向量、SimHash、Tfidf、SequenceMatcher]
  • Qt实现图片旋转的几种方式(全)
  • 常见面试题-Redis持久化策略
  • 一文搞懂什么是 GNU/Linux 操作系统
  • sql注入 [极客大挑战 2019]LoveSQL 1
  • 验证码 | 可视化一键管控各场景下的风险数据
  • 问题解决:Ubuntu18.04下nvcc -V指令可用,/usr/local/下却没有cuda文件夹,原因分析及卸载方法
  • uniapp+vue3使用pinia,安卓端报错白屏
  • OpenCV图像处理、计算机视觉实战应用
  • MySQL 事务的底层原理和 MVCC(一)
  • vue3中使用全局自定义指令和组件自定义指令
  • JVM 堆外内存详解
  • 数据库的基本概念以及MySQL基本操作
  • 【Docker】Docker安装Nginx配置静态资源
  • 【码神之路】【Golang】博客网站的搭建【学习笔记整理 持续更新...】
  • Win10 电源选项那选择“关闭显示器“为1分钟,1分钟后就锁屏了?怎么才能关闭显示器后不锁屏
  • 虚拟机centos设置网络模式(桥接|NAT)
  • MySQL 8.2 Command Line Client打开时一闪而过闪退问题
  • 【NI-RIO入门】CompactRIO介绍及环境安装
  • 生产问题 Recv-Q101
  • 从零开始:Rust环境搭建指南
  • Tensorrt 实现 yolov5-cls 遇到的问题
  • 智能指针(Newbie Note)
  • 2023.11.22 homework
  • 存储日志数据并满足安全要求
  • Linux系统管理与服务器安全:构建稳健云数据中心