kotlin中經(jīng)常出現(xiàn)run运敢、with校仑、let忠售、also、apply迄沫,開始時候容易迷糊稻扬,有什么用有什么區(qū)別?
一:作用
作用域函數(shù) 用于擴展方便開發(fā)者編碼的內(nèi)置函數(shù)羊瘩,能大大提高開發(fā)者的開發(fā)效率泰佳。
首頁明確一點他們都是錦上添花,不用一樣可以寫代碼尘吗,但是優(yōu)秀的代碼必然需要使用作用域函數(shù)提高效率乐纸。
二:定義
Kotlin 標準庫包含幾個函數(shù),它們的唯一目的是在對象的上下文中執(zhí)行代碼塊摇予。當對一個對象調(diào)用這樣的函數(shù)并提供一個 lambda 表達式時,它會形成一個臨時作用域吗跋。在此作用域中侧戴,可以訪問該對象而無需其名稱。這些函數(shù)稱為作用域函數(shù)跌宛。共有以下五種:let酗宋、run、with疆拘、apply 以及 also蜕猫。
這些函數(shù)基本上做了同樣的事情:在一個對象上執(zhí)行一個代碼塊。不同的是這個對象在塊中如何使用哎迄,以及整個表達式的結(jié)果是什么回右。
這里所說的標準函數(shù)主要來自于標準庫中在文件Standard.kt中的所有函數(shù)。
三let例子
簡化代碼漱挚,方便統(tǒng)一判斷空處理
五run翔烁、with、let旨涝、also蹬屹、apply區(qū)別
https://juejin.im/post/5ae02dd051882567137dde82
http://www.reibang.com/p/d9b2d8e83925