函数式接口——Java学习笔记

本文详细介绍了四种函数式接口:Supplier生产型接口、Consumer消费型接口、Predicate判断型接口及Function转换型接口。针对每种接口的功能特性进行了阐述,并提供了具体的使用实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

函数式接口

函数式接口一般使用形式:

在类中先定义一个方法method,参数传递,再加上函数式接口类型参数

再调用method方法,在传入参数时,传入指定数据,再使用函数时接口来作为参数(类似于匿名内部类)

public class Myclass{
	T method(ElemType e,函数式类型 f){
		返回值 = f.唯一抽象方法(e);
	}
	
	void main(){
		method(e,()->{实现方法作用})
	}
}

1. Supplier生产型接口

T get():用来生产一个指定类型的数据对象

ElemType method(Supplier<ElemType> sup){
	return sup.get();
}
void main(){
	method(()->{return new ElemType();})
}

2. Consumer消费型接口

void accept(ElemTpte e):用来使用一个方法,使用完就完了,并没有返回结果

Consumer andThen(consumer):一个消费完以后再消费另一个。相当于对一个数据操作完成后再进行另一个操作。比如:我们对一个字符串先进行全部大写操作,再进行小写操作。两者是顺序进行的

void method(ElemType e,Consumer<ElemType> con){
	con.accept(e);
}
void main(){
	ElemType elem;
	method(elem,(lelem)->{对lelem进行一系列操作;});
}

3. Predicate判断型接口

boolean test(ElemType e):对传入数据按照自己规则进行判断是否符合

Predicate and(predicate):**对数据进行两次判断,是“且”的逻辑关系

Predicate or(predicate):“或”的逻辑关系

**Boolean negate()**对得出的结果进行取反操作,“非”的逻辑关系

boolean method(ElemType e,Predicate<ElemType> pre){
	return pre.test(e);
}
void main(){
	ElemType e;
	method(e,(elem)->{判断elem是否xxx;});
}

4. Function转换型接口

ElemTypeB apply(ElemTypeA):对传入数据进行转换,将ElemTypeA转成ElemTypeB类型

Function<ElemTypeA,ElemTypeB> andThen(function<ElemTypeC,ElemTypeA>)

void method(ElemTypeA a,Function<ElemTypeA,ElemTypeB> fun){
	fun.apply(a)//将a的数据类型(ElemTypeA)转成ElemTypeB,即:Function接口的泛型由第一															个转成第二个
}
void main(){
	ElemTypeA a;
	method(a,(elema)->{return a转成ElemTypeB类型});
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值