有用android retrolambdaa 的吗,到底有什么坑

retrolambda 常用工具方法 - 开源中国社区
当前访客身份:游客 [
当前位置:
retrolambda
标签代码列表(0)
当前标签下
暂无代码!
开源从代码分享开始
TOP40活跃贡献者
C/C++[231]
红薯[1418]
Sephiro...[114]
Python...[114]
小卒过河[191]
Ruby/Ra...[45]
YuChao...[110]
优雅先生[136]
JavaScr...[41]
黃偉達[35]
罪恶的花生[113]
hcqenjo...[340]
Flash/A...[125]
废柴大叔[46]
JavaScr...[29]
baoer10...[20]
Python...[14]
临峰不畏[21]
Shell/批...[9]
lidashu...[20]
canghai...[15]
yangjia...[12]
杨尚川[10]
铂金胖子[25]
Python...[18]
疯狂的流浪[286]
牛奋Deb...[11]
土豆-地瓜[30]
RyanLee...[9]
磊神Ray[32]
anima.l...[9]
JavaScr...[6]
it-liu...[11]
Amamatt...[51]
前端大师傅[7]
JavaScr...[5]
晚风工作室[7]
江哥一直在[8]
intergr...[35]
Python...[14]
chenyan...[6]
Shell/批...[6]
Google ...[26]
本月热门代码语言TOP5&&国之画&&&&&&
版权所有 京ICP备号-2
迷上了代码!...以及其他 64 人如何在Android编程中使用Lambda表达式_百度知道
如何在Android编程中使用Lambda表达式
在Java8之前,Java并不支持Lambda表达式,而Android目前最新也才支持到Java7特性,所以在Android中使用Lambda表达式需要进行一些处理,将Lambda表达式编译成Android可以“理解”的方式。Retrolambda是一个能够让我们在Java7中使用Lambda的工具,再通过gradle-retrolambda插件,在gradle编译过程中将会:将Java8中的 javac编译 Java8的代码;将产生的Java8的字节码转换为Java6的字节码;重新打包class。build.gradle配置文件如下:buildscript {
repositories {
mavenCentral()
dependencies {
classpath 'me.tatarka:gradle-retrolambda:1.2.+'
}}// Required because retrolambda is on maven centralrepositories {
mavenCentral()}apply plugin: 'android' apply plugin: 'retrolambda'也可以添加如下设置:retrolambda {
jdk System.getenv(&JAVA8_HOME&)
javaVersion JavaVersion.VERSION_1_6}android {
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}}从此以后,strings.map(new Func1&String, Integer&() {
public Integer call(String s) {
return s.length();
});可以写作:strings.map((String s) -& {
return s.length();});至于详细的bytecode转换过程,有兴趣的同志们可以自己研究研究。
其他类似问题
为您推荐:
您可能关注的推广
lambda表达式的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 retrolambda如何使用 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信