美文网首页
内联扩展函数

内联扩展函数

作者: 加油小李 | 来源:发表于2020-08-30 14:02 被阅读0次

    内联函数的作用域

    let函数

    let扩展函数的it关键字可以调用对象的方法或执行lambda表达式 

    Old:

    没有使用let的代码

    New:

    使用let后的代码

    with函数 

    with函数的函数体可以直接使用with函数对象的所有变量和方法而不需要写引用(onBindViewHolder数据和控件绑定的方法中用的比较多可以节省大量引用对象的代码)

    Old:

    old

    New:

    new

    run函数

    run函数弥补了 with函数不能判空的缺憾和let函数不能直接使用对象成员的缺货可以说是let和with的结合体

    old:

    old

    new: 

    new

    apply函数

    apply函数类似于run函数,跟run函数不同的是apply函数返回了执行apply函数后的对象本身而run函数只会返回了函数体内最后一行的执行结果

    Old:

    old

    New:

    new

    另外apply还可以用于多层判断中优化if语句

    Old:

    old

    New:

    new


    also函数

    also函数和let函数很像只是let函数返回函数体内最后一行,而also函数返回对象本身

    Test: let返回的内容为函数体内最后一行的值

    let

    Test: also返回的是函数本身的值

    also

    End

    相关文章

      网友评论

          本文标题:内联扩展函数

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