JDK1.8新特性系列2--lambda表达式快速入门(下)

上篇说完了为什么用 lambda 表达式、什么是 lambda 表达式以及怎么用 lambda 表达式,下篇主要说说实际开发中 lambda 表达式的使用技巧和注意事项。

一、lambda 表达式使用技巧

1.可以将lambda表达式看作是一个函数并作为参数传递

lambda表达式不是对象,不能把lambda表达式赋值给类型为Object的变量,因为Object不是函数式接口。

//将这个lambda表达式将赋给一个字符串比较器
Comparator<String> comp = (first, second) -> first.length() - second.length();

2.当lambda表达式的体只调用一个方法而不做其他操作时,才能把lambda表达式重写为方法引用

list -> list.size() == 0

3.利用数组构造器构造泛型类型T的数组

Person[] people = stream.toArray(Person[]::new);

二、lambda 表达式的注意事项

1.必须实现函数式接口唯一抽象方法

lambda 表达式无法独立运行,其必须实现对应的函数式接口的唯一抽象方法。

例如下面这个 lambda 表达式实现的是 Consumer 这个函数式接口的唯一抽象方法 accept(T t):

//合理
@F
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

牛马伦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值