Retrolambda的用途是什么?
我们在哪里使用Retrolambda框架?
答案 0 :(得分:4)
在早期版本的Android中,不支持Java 8。 Retrolambda提供了一种在8以下Java版本上使用“lambda表达式”的方法。
Android中lambdas的常见示例适用于点击侦听器
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语言功能的第三方库的支持。
答案 1 :(得分:3)
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(“Long Click”));
您可以使用此链接: https://mayojava.github.io/android/java/using-java8-lambda-expressions-in-android