美文网首页
lambda表达式的学习

lambda表达式的学习

作者: 予以摩卡 | 来源:发表于2017-05-22 15:23 被阅读38次

Lambda表达式 我相信网上的文章已经一大堆了,自从Java8面世后,也就慢慢添加了一些的新的表达的方式 Lambad就是其中的佼佼者,它以

简化匿名类的写法,并且在RxJava RxAndroid 中的表现 一下子让代码看起来更加简洁,更加让代码可读性增加(哈哈 这个是因人而异,如果一直你排斥它,你就会觉的它可读性不好,并且看起来让人不那么理解)

今天就让我们来认识一个这个LamBda 这个到底是什么鬼

我百度了 一下 这个LamBda  发现居然是这样的  n.希腊字母的第 11个字; Shit 这个可不是我要的答案 .

然后去知乎搜索了一下 果然是专业平台 一下子就让我理解这个单词的意思

“Lambda 表达式”是一个匿名函数,它可以包含表达式和语句,并且可用于创建委托或表达式树类型。

所有 Lambda 表达式都使用 Lambda 运算符 =>,该运算符读为“goes to”。 该 Lambda 运算符的左边是输入参数(如果有),右边包含表达式或语句块。 Lambda 表达式 x => x * x 读作“x goes to x times x”。可以将此表达式分配给委托类型

所以 我们可以简单的把它称为就是一个匿名函数的简化写法。哈哈 原谅我就是这么耿直 

好了 既然已经明白了这个单词的意思 那肯定是我们要去学习一下怎么使用。

嘿嘿 我这里主要使用的是android的一些写法  但是在java中也是一样的

主要工具:AS(android studio)   JDK:java8

然后 怎么配置:首先是在project项目的build文件中 添加 如图:

第一步:

classpath'me.tatarka:gradle-retrolambda:3.2.5'// lambda表达式  简单的理解就是简化匿名函数

第二步:如图所示

applyplugin:'me.tatarka.retrolambda'//加上这句加,入plugin声明

compileOptions {

sourceCompatibilityJavaVersion.VERSION_1_8

targetCompatibilityJavaVersion.VERSION_1_8

}

然后更新一下 就可以使用了 然后怎么使用:

平常我们的写法btton的点击事情  你会发现使用了Lambda表达式之后 这个匿名类变成了灰色了的

然后你会发现你把鼠标点击上去的时候 在按快捷键会弹出如图所示的提示字:

是不是很明显了 意思就是提示你这个匿名类可以用Lambda表达式代替 so 然后你点击了就变成了下图

是不是很简单了呢 其实吧 AS这个工具会智能提醒你有哪些匿名类可以换成Lambda表达式 所以尽快的学习使用吧

相关文章

网友评论

      本文标题: lambda表达式的学习

      本文链接:https://www.haomeiwen.com/subject/bqabxxtx.html