“Lambda 表达式”(lambda expression)是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数。Lambda表达式可以表示闭包(注意和数学传统意义上的不同)。
作为一个Android开发者,个人感觉lambda用起来效果还行,能够让代码看起来更简洁一些,如果你想学的更多一些,推荐一个我很喜欢的博主的一篇博客https://blog.youkuaiyun.com/renfufei/article/details/24600507/,讲的很详细,喜欢的同学可以学一下,另外我在这里介绍给各位如何在Android项目中用到自动转换的lambda表达式。
1. 首先 lambda需要安装JDK8,没有升级的小伙伴去升一下级
2. 然后在你项目的 build.gradle加入下面的依赖,是你整个项目的build.gradle
classpath 'me.tatarka:gradle-retrolambda:3.2.4'
3. 最后在你的app的build.gradle加入下面的几句话
apply plugin: 'me.tatarka.retrolambda'
android {
...
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
...
}
这就配置好了,可以写一个简单的onClickListener
mBack.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
可以看到在后面的灰色地方会有提示,用Alt+Enter
选择用lambda替换之后整个代码就变成了
mBack.setOnClickListener(v -> finish());
还是很简单的