【Kotlin 入門指南】系列文章目錄:https://bit.ly/3t8awwL
Kotlin 線上課程教學影片:https://bit.ly/3qJ5a5Q
當你想要儲存多個屬性時,Kotlin 的委託功能提供了一個相當方便的解決方案。你可以使用 Map
委託來儲存和訪問這些屬性。這樣一來,你可以在一個地方組織並輕鬆地操作多個屬性。
class User(private val map: Map<String, Any?>) {
val name: String by map
val age: Int by map
}
fun main() {
val user = User(mapOf(
"name" to "HKT",
"age" to 18
))
println(user.name)
println(user.age)
}
輸出結果
HKT
18
在這個範例中,我們建立了一個 User
類別,這個類別接受一個 Map
作為參數。在這個 Map
中,我們可以儲存多個屬性,每個屬性都有其對應的鍵值(key-value)組合。
在 User
類別內部有兩個屬性:name
和 age
。透過 by
關鍵字,我們將這兩個屬性委託傳入 map
。
接著,我們在 main
函式中使用 User
類別,建立了一個 user
物件,並傳入一個 Map
作為參數,裡面包含了 name
和 age
兩個屬性的資料。
最後,我們使用 user
物件來存取 name
和 age
屬性。這兩個屬性的值是從傳入的 map
中取得的,這代表我們可以輕鬆地透過這些屬性來取得使用者的名稱和年齡資訊。