Java内置函数式接口

目录

Java内置函数式接口

Lambda引用变量必须为final类型的原因?


Java内置函数式接口

接口输入参数返回类型说明
Predicate<T>Tboolean断言
Consumer<T>T/消费一个数据
Function<T, R>TR输入T输出R的函数
Supplier<T>/T提供一个数据
UnaryOperator<T>TT一元函数(输入输出类型相同)
BiFunction<T, U, R>(T. U)R2个输入的函数
BinaryOperator<T>(T, T)T二元函数(输入输出类型相同)

Lambda引用变量必须为final类型的原因?

因为Java传参为值传递,外部变量如果改变引用对象,就会造成传进lambda内的变量与外部变量引用的不是同一个对象,就会导致lambda的计算结果与外部变量无关的现象。而lambda希望的是计算结果与入参有关,所以不希望外部变量改变引用对象,所以必须为final类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值