java lambda 接口.demo_java8实战二------lambda表达式和函数式接口,简单就好

本文介绍了Java 8中的Lambda表达式和函数式接口的概念及应用。通过比较传统匿名类与Lambda表达式在实现Comparator接口上的区别,展示了Lambda的简洁性。还探讨了函数式接口的特性,如Runnable接口的使用示例,并指出函数描述符与Lambda表达式签名的关系。此外,文章提到了Predicate接口及其在过滤条件中的应用,最后讨论了方法引用的使用,以简化代码。
摘要由CSDN通过智能技术生成

一、Lambda

可以把Lambda表达式理解为简洁地i表示可传递的匿名函数的一种方式:它没有名称,但它有参数列表、函数主体、返回类型,可能还是一个可以抛出的异常列表。

听上去,跟我们用的匿名类,匿名方法什么的很像。我们继续看看把。

第一篇,我们做的事分苹果,这次我们给苹果根据重量来做个Comparator吧。

先来以前的:

1 Comparator byWeight=new Comparator() {2 @Override3 public intcompare(Apple o1, Apple o2) {4 returno1.getWeight ().compareTo (o2.getWeight ());5 }6 };

用了lambda:

1 Comparator byWeight=(Apple a1,Apple a2)->a1.getWeight ().compareTo (a2.getWeight ());

是不是很简单。简单讲一下lambda的格式,由lambda参数、箭头、lambda主体三部分组成;

a0159ae81a93fdb8b67717c24111adf0.png

其中lambda参数也可以不用写类型,它会根据上下文自己判断类型,后面有例子出现。

而lambda主题如果像以上表达式只有一句的话,可以不叫{},但有多条语句的话必须加{}。

二、函数式接口

1 public interface Pridicat

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值