关于Java8增加的特性 2024/7/6;

lambda表达式:

方法引用分类 类名::方法
类名::staticMethod (args)->类名.staticMethod(args) 静态方法
inst::instMethod (args)->inst.instMethod(args) 实例方法
类名::instMethod (inst,args)->inst.instMethod(args) 对象方法
类名::new (args)->new 类名(args) 构建方法
lambda常用接口 接口名<参数类型,可多个参数>
Consunmer: 带参无返回值;
.accept(s); 传入参数
Supplier: 无参有返回值;
.get(); 获取返回值
Function: 带参带返回值
.apply(s) 传入参数并获取返回值
BiFunction: 带双参带返回值
Preadicated: 带参带boolean类型返回值
.test(s) 传入参数并获取boolean返回值
Comparator: 带双参并返回boolean类型

lambda表达式可以将方法当作参数进行传递;

只有接口的传参位置才可以使用箭头函数简化;

如果方法只有一行可省略{};

如果接口传参只有一个可省略();

如果lambda表达式调用其他方法可使用::

其可以根据当前接口的有参无参自动注入方法中;

//例如:
public static void test(Consumer<String> consumer,String s)
​
//调用静态test方法时,参数consumer的位置可以使用()->{}(箭头函数)代替
//s为传入参数,而箭头后为该函数执行的方法;
test(s -> System.out.println(s+"ooo"),"hahaha");
//如果方法不只有一行使用{};
test(s->{
s="hhh";
System.out.println(s+"ooo")
},"hahaha")
//如果参数不只有一行使用();
test((s,a)->{
s="hhh
  • 15
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值