Kotlin:标准函数API
任何Kotlin代码都可以自由调用所有标准函数。
一、with函数
val result = with(obj) {
// 这里是obj的上下文
"value" // 最后一行是函数返回值
}
二、run函数
run与with相似,但run不能直接调用,必须调用某个对象的run函数。
val result = obj.run {
// obj的上下文
"value" // 返回值
}
三、apply函数
apply与run类似,必须在对象上调用,apply无法设置返回值,但会返回调用对象本身。
val result = obj.apply { // result == obj
// obj上下文
}
四、use函数
它会保证Lambda中的代码全部执行完成后自动将外部流程关闭。
val writer = BufferedWrite(...)
writer.use {
...
} //自动关闭外部流
五、forEachLine函数
将每行内容回调到Lambda中。
val reader = BufferedReader(...)
reader.forEachLine {
println(it) // it是回调的每一行内容
}