Retrolambda 有什么用?
我们在哪里使用 Retrolambda 框架?
2 回答
在早期版本的 Android 中,不支持 Java 8。Retrolambda 提供了一种在低于 8 的 Java 版本上使用“lambda 表达式”的方法。
Android 中的常见 lambda 示例用于点击侦听器
button.onClick(v -> Log.i("hello", "lambdas"));
但是,从 Android Studio 2.4 Preview 4 及更高版本开始,它
支持所有 Java 7 语言功能和 Java 8 语言功能的子集
“Lambdas”适用于所有 SDK 版本
Android Studio 提供了从 Retrolambda 迁移的工具,因为它不再需要。
另外值得一提的是
Retrolambda 不支持使用 Java 8 语言特性的第三方库。
Retrolambda 是一个库,它允许在 Java 7、6 或 5 上使用 Java 8 lambda 表达式、方法引用和 try-with-resources 语句。
Gradle Retrolambda 插件允许将 Retrolambda 集成到基于 Gradle 的构建中。例如,这允许在 Android 应用程序中使用这些结构,因为标准 Android 开发目前还不支持 Java 8。
TextView textView = (TextView) findViewById(R.id.text_view);
textView.setOnLongClickListener(v -> System.out.println("长按"));
你可以使用这个链接: https ://mayojava.github.io/android/java/using-java8-lambda-expressions-in-android