Discuss / 编程 / 请问廖老师,java里的lambda表达式算不算是种语法糖?有没有什么性能或者功能上的提升和改进?

请问廖老师,java里的lambda表达式算不算是种语法糖?有没有什么性能或者功能上的提升和改进?

Topic source

王奋浩2015

#1 Created at ... [Delete] [Delete and Lock User]

我之前看的您的JavaScript教程里提到的JavaScript的lambda表达式,是和function关键字定义的函数在功能上稍有区别的,如对待this关键字的问题上。但是java的lambda表达式代表的是一个函数式接口的实现类吧,那在性能上或者功能上有什么实际的提升和改进吗?

廖雪峰

#2 Created at ... [Delete] [Delete and Lock User]

现在是单方法接口的语法糖,将来可能就是真正的函数了

lambda不是简单的匿名内部类的语法糖(lambdas aren’t just anonymous inner classes under the hood)

在字节码级别的调用都改变了。在性能上绝大部分情况比匿名内部类的效率要高.

参照:lambda实现机制


  • 1

Reply