因为之前一直用Java,不太了解闭包的概念,学完课程之后,我明白了闭包的概念是:
在一个函数A中返回了另一个函数B,只有函数B才可以访问函数A中的内容,这个现象的概念叫做闭包
我有两个疑问:
第一个是:
@kotlin.internal.InlineOnly
public inline fun <T> T.apply(block: T.() -> Unit): T {
contract {
callsInPlace(block, InvocationKind.EXACTLY_ONCE)
}
block()
return this
}
想apply这种方法当函数(表达式)以参数的形式传递进去,这属不属于闭包?
第二个疑问是:
看了您的例子,我还是不太明白闭包到底可以用在哪里?老师能不能给一些 常用的地方,或者深刻的例子.能够更好的加深理解.