在kotlin中資料類能夠幫助生成equals() hashcode() tostring() copy()方法,不需要手動重寫這些方法
data class client(val name: string, val postalcode: int)
equals() hashcode()方法會將所有在主構造方法內的屬性納入考慮。equals()方法會判斷判斷所有的屬性的值是否相等.hashcode()方法會返回乙個根據所有屬性生成的雜湊值。
在使用資料類的時候,推薦將資料類中的屬性定義為val。
為了讓使用不可變的資料類更容易,kotlin編譯器為他們多生成了乙個方法cop(),這個方法通過建立副本來修改屬性的值,副本擁有單獨的宣告週期不會影響**中引用原始例項的位置。
fun main(args: array)
如果只想要乙個類單純的當作資料容器,那麼就可以使用資料類,不需要重寫equals() hashcode()等方法。 Kotlin 學習 資料類
在 kotlin 中,有乙個 data 關鍵字,來標記類,這種類一般只用來儲存資料,但是資料類必須滿足類以下條件 1.主建構函式至少有乙個引數 2.主建構函式的引數必須使用 var 或者 val 標記 3.資料類不能使抽象 開放 密封或者內部的 4.1.1以前 資料類只能實現介面 data clas...
Kotlin資料類詳解
資料類需要滿足以下要求 對於資料類,編譯器會自動生成如下內容 關於資料類成員的繼承要點 data class person var name string,var age int,var address string 在jvm上,如果生成的類需要擁有無參構造方法,那麼就需要為所有的屬性指定預設值。d...
Kotlin 資料類與密封類
資料類 kotlin 可以建立乙個只包含資料的類,關鍵字為 data data class user val name string,val age int 編譯器會自動的從主建構函式中根據所有宣告的屬性提取以下函式 equals hashcode tostring 格式如 user name jo...