Kotlin 教學【從零開始學 Kotlin 程式設計】kotlin 區域函數 (Scope functions) - apply

【從零開始學 Kotlin 程式設計】
線上教學課程目錄:https://bit.ly/2Kx7GrM
Youtube 課程播放清單:https://bit.ly/3qJ5a5Q

apply

apply 函數可以視為,對此物件套用設定相關屬性。

apply 區域函數,基本用法

//宣告一個 Person 資料類別
data class Account(val name: String) {
    var id:String = ""
    var balance: Int = 0
    var addr: String = ""
}

//使用前
val adam = Account("HKT線上教室")
    adam.id = "qwerty1234"
    adam.balance = 88888888
    adam.addr = "台北101"

//使用後
val account = Account("HKT線上教室").apply {
    id = "qwerty1234"
    balance = 88888888
    addr = "台北101"
}

println(account.name) //HKT線上教室
println(account.id) //qwerty1234
println(account.balance) //88888888
println(account.addr) //台北101

apply 與 run 函數差異比較

apply 與 run 函數很像,可以對該物件設定屬性,兩者差異是 apply 函數是返回該物件,run 函數是返回 Lambda 運算結果

fun main() {
    val applyResult = "HKT線上教室".apply {
        9 * 9
    }

    val runResult = "HKT線上教室".run {
        9 * 9
    }
    
    println(applyResult)//HKT線上教室
    println(runResult)//81
}

apply 區域函數功能表

函數名稱物件參考名稱返回值是否為擴展函數
applythisContext 物件

apply 區域函數,在 Android 應用實戰範例

val textView : TextView = findViewById(R.id.textView)

//未使用 run 區域函數,每次使用都要「?.」判斷是否為 null
textView?.text = "HKT線上教室"
textView?.setTextColor(Color.parseColor("#ffd700"))
textView?.textSize = 66f

//使用 apply 區域函數
textView.apply {
    text = "HKT線上教室"
    setTextColor(Color.parseColor("#ffd700"))
    textSize = 66f
}

那這次的課程就介紹到這邊囉~

順帶一提,KT 線上教室,臉書粉絲團,會不定期發佈相關資訊,不想錯過最新資訊,不要忘記來按讚,加追蹤喔!也歡迎大家將這套課程分享給更多人喔。

我們下次再見囉!!!掰掰

這個網誌中的熱門文章

nano 文字編輯器

2023 最新入門零基礎 Kotlin教學【從零開始學 Kotlin 程式設計】Kotlin 教學課程目錄 (Android Kotlin, IntelliJ IDEA, Android Studio, Android APP 開發教學)

16天記下7000單字

Android Studio 歷代版本下載點

最新入門零基礎 Java 教學【從零開始學 Java 程式設計】Java教學課程目錄 (IntelliJ IDEA 開發教學)