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

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

這個網誌中的熱門文章

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

Android Studio 歷代版本下載點

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

2022 最新入門零基礎 Flutter教學 【Flutter 程式設計入門實戰 30 天】Flutter 教學課程目錄 (IntelliJ IDEA 開發教學)

nano 文字編輯器