Retrolambda有什么用?

时间:2017-04-28 11:30:45

标签: java android retrolambda

Retrolambda的用途是什么?
我们在哪里使用Retrolambda框架?

2 个答案:

答案 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迁移的工具,因为它不再需要。

Android Java 8 Support

另外,值得一提的是

  

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