一尘不染

android java将在Java 8中支持lambda表达式吗?

java

我知道dalvik vm中的“ java”在API和体系结构等方面与Java se有所不同。但是语法始终是相同的。(如果我错了,请纠正我)

现在即将发布Java
8中
lambda表达式的支持,android
java会遵循吗?google或aosp是否承诺使dalvik与Java se保持一致?

更新:现在和Android 4.4 Kit Kat(API 19)一样,已经正式支持Java
7语法。来自android.com


阅读 270

收藏
2020-12-03

共1个答案

一尘不染

Android不使用Oracle的Java SE版本,它基于ApacheHarmony项目的一部分因此它甚至不支持Java7。不再积极开发Harmony,也不支持1.7。

除非Google决定将Harmony和Android SDK升级到更新的Java版本,否则Android中将不会有Java 7或Java 8功能-
即使新功能只是语法上的。他们可以使用 OpenJDK之
类的替代实现,尽管我不知道有什么计划。有人认为,由于Google和Oracle之间的诉讼,不太可能使用OpenJDK。


自编写此答案以来 ,Java7的_一些_
功能最为显着:菱形运算符,多捕获,字符串切换以及Android
N中的lambda表达式等 Java8功能也已在Android中实现。(感谢Ross和Stefan在评论中提到它)。

Google必须自己努力实现这些功能,而且似乎主要是为了获得更多受欢迎的功能。

2020-12-03