使用 apply 初始化物件或實現方法連結
apply
的文件說明如下:
使用
this
值作為接收器呼叫指定的功能塊並返回this
值。
雖然 kdoc 不是那麼有用,但 apply
確實是一個有用的功能。通俗地說,apply
建立了一個範圍,其中 this
被繫結到你稱之為 apply
的物件。這使你可以在需要在物件上呼叫多個方法時備用一些程式碼,稍後將返回該物件。例:
File(dir).apply { mkdirs() }
這和寫這個是一樣的:
fun makeDir(String path): File {
val result = new File(path)
result.mkdirs()
return result
}