JDK 8中重要的函数式接口(必知必会)
2024-10-22 02:50:49
JDK 8 提供的重要函数式接口:
Consumer (消费者)
- 功能:接收一个对象,返回void。
- 定义:void accept(T t)
- 默认方法:Consumer andThen(Consumer after)
BiConsumer (双参消费者)
- 功能:接收两个对象,返回void。
- 定义:void accept(T t, U u)
- 默认方法:BiConsumer andThen(BiConsumer after)
Supplier (提供者)
- 功能:不接收参数,返回一个对象。
- 定义:T get()
- 默认方法:无
Function<T, R> (单参函数)
- 功能:接收一个参数,返回一个参数。可理解为初阶函数 f(x)
- 定义:R apply(T t)
- 默认方法:
- 组合 Function<V, R> compose(Function before)
- 颠倒组合 Function<V, R> compose(Function after)
- 返回自身 Function<T, T> identity()
UnaryOperator<T> extends Function<T, T> (同类型单参函数)
- 功能:接收一个参数,返回一个同类型参数。
- 定义:T apply(T t)
- 默认方法:
- 返回自身 UnaryOperator<T> identity()
BiFunction<T, U, R> (双参函数)
- 功能:接收两个参数,返回一个参数。可理解为初阶函数 f(x,y)
- 定义:R apply(T t, U u)
- 默认方法:BiFunction<T, U, V> andThen(Function<? super R, ? extends V> after)
BinaryOperator<T> extends BiFunction<T,T,T> (同类型双参操作)
- 功能:接收两个同类型参数,返回一个同类型参数。
- 定义:T apply(T t1, T t2)
- 默认方法:
- BinaryOperator<T> minBy(Comparator<? super T> comparator)
- BinaryOperator<T> maxBy(Comparator<? super T> comparator)
Predicate<T> (断言)
- 功能:接收一个参数,返回一个布尔值。
- 定义:boolean test(T t)
- 默认方法:
- Predicate<T> and(Predicate<? super T> other)
- Predicate<T> or(Predicate<? super T> other)
- Predicate<T> negate()
- Predicate<T> isEqual(Object targetRef)
最新文章
- [No00009E]几种常见的命名规则
- Window Server 2012 R2 没有照片查看器 打开图片都是画板问题怎么解决
- mysql 之基本操作
- 善用VS中的Code Snippet来提高开发效率
- G面经prepare: BuyGoods
- Winform 窗口拖动
- 四、XML映射配置文件
- <;php>;文件操作*(重要)
- 【转】对memcached使用的总结和使用场景
- 移植Linux-3.4.2内核到S3C2440
- MyBatis:自定义Mapper
- windowsserver2016系统性能和功能对比介绍
- Spring 中StopWatch用法
- SQL-48 将所有获取奖金的员工当前的薪水增加10%。
- funny故事
- openssl - 怎么打开POD格式的帮助文件
- ChromeExtension入门浅谈
- 【Devops】【docker】【CI/CD】1.docker搭建Gitlab环境
- Hadoop序列化机制及实例
- 【UVA】11825 Hackers&#39; Crackdown(状压dp)
热门文章
- 【odoo】【知识杂谈】单一实例多库模式下定时任务的问题分析
- Insights直播预告 | 多媒体管线服务,助您轻松进入“技术流”创新阵地
- Appium问题解决方案(5)- selenium.common.exceptions.InvalidSelectorException: Message: Locator Strategy &#39;name&#39; is not supported for this session
- Jenkins持续集成接口压测
- IKEv2协议协商流程: (IKE-SA-INIT 交换)第二包
- ysoserial exploit/JRMPClient
- io流-缓冲流
- 第25篇-虚拟机对象操作指令之putstatic
- PTA——c++基本输入输出
- 【PHP数据结构】交换排序:冒泡、快排