java为什么要有lambda表达式
2个回答
展开全部
Lambda表达式是JDK8(也就是JDK1.8)最重要的新增功能。
我认为Lambda表达式的主要功能是利用”参数列 ->方法本体“的语法省略重复声明变量类型和不想费神去命名一个方法去调用另一个方法的表达式。
比如子JDK8之前
public interface IntegerFunction {
Integer apply(Integer i);
}
你可以使用匿名类来实现IntegerFunction 的实例。
IntegerFunction integerFunction=new IntegerFunction(){
public Integer apply(Integer i) {
return i*2;
}
}
你会看到信息重复了,声明integerFunction变量是已经告知是IntegerFunction 类型了,而建立IntegerFunction 实例的语法又写了一次。若用JDK8的Lambda表达式。可以直接改写为:
IntegerFunction integerFunction=(Integer i) -> i*2;
这些只是简略的介绍Lambda表达式的基本语法,如果你想更加全面的了解Lambda表达式的完整应用。可以看一些书籍参考一下其中更详细的介绍。比如林信良的《java学习笔记 jdk8》中的第九章和第十二章就有介绍。
我认为Lambda表达式的主要功能是利用”参数列 ->方法本体“的语法省略重复声明变量类型和不想费神去命名一个方法去调用另一个方法的表达式。
比如子JDK8之前
public interface IntegerFunction {
Integer apply(Integer i);
}
你可以使用匿名类来实现IntegerFunction 的实例。
IntegerFunction integerFunction=new IntegerFunction(){
public Integer apply(Integer i) {
return i*2;
}
}
你会看到信息重复了,声明integerFunction变量是已经告知是IntegerFunction 类型了,而建立IntegerFunction 实例的语法又写了一次。若用JDK8的Lambda表达式。可以直接改写为:
IntegerFunction integerFunction=(Integer i) -> i*2;
这些只是简略的介绍Lambda表达式的基本语法,如果你想更加全面的了解Lambda表达式的完整应用。可以看一些书籍参考一下其中更详细的介绍。比如林信良的《java学习笔记 jdk8》中的第九章和第十二章就有介绍。
2016-10-15
展开全部
这应该是在外国使用的较多吧
~
~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询