Kotlin从头开始(一),带你轻松理解Android-Hook机制

此处有没有一点疑惑,为什么类型推导得出的类型是 () -> Unit ?

此时只要回头看一下Kotlin中函数是如何声明的,就知道为什么了。

为什么这里的函数不是fun开头的

  • 其实这里的函数是匿名函数,上述的写法就是把这个匿名函数赋值给了变量。

  • 可以直接使用变量名进行调用或者使用invoke,方式如下:

fun main() {

val getString : () -> Unit = {

println(“hello kotlin”)

}

getString()

getString.invoke()

}

  • 两种方式都可以成功调用,这里的()其实是invoke操作符的重载。

var getString = {“this is kotlin”} 是什么意思

跑一下上面的代码,看看运行结果是啥

fun main() {

val getString = {

“hello kotlin”

}

print(getString.invoke())

}

  • 结果打印了hello kotlin。

  • 在括号中,最后一行将会作为返回值。如果把代码修改为下面的样子

fun main() {

val getString = {

“hello kotlin”

666

}

print(getString.invoke())

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值