我正在使用Android Studio,想要使用仅存在于Java 8中的Lambda表达式。当我尝试使用它时,会出现以下错误提示:
Lambda expression are not supported at this language level.
那么,在Android Studio上我该如何更改呢?
我正在使用Android Studio,想要使用仅存在于Java 8中的Lambda表达式。当我尝试使用它时,会出现以下错误提示:
Lambda expression are not supported at this language level.
那么,我如何在AndroidStudio上更改呢?
你不能。Android只支持Java 7及以下版本。如果你想仅为了使用Lambda而使用AS,你可以使用gradle-retrolamba或retrolambda,这会将retrolambda回溯到Java 6/7。
Android支持Java 6到KitKat(4.4),其中一些语法糖(如钻石操作符),以及从那时起的Java 7(Lollipop和Marshmallow)。 Lambdas和其他Java 8的东西只能作为插件使用(例如gradle-retrolambda或原始的retrolambda)。它们可能会在某个时间点包含在API中(像Java 7和KitKat一样),但似乎不太可能很快实现。