kotlin的數(shù)據(jù)類、單例類

一、數(shù)據(jù)類
java中的數(shù)據(jù)類通常需要實現(xiàn)equals()、hashCode()、toString()這幾個方法,特別是toString()方法用于提供清晰的輸入日志,否則打印的是一串內(nèi)存地址,Kotlin中就非常簡單,創(chuàng)建的類如下:

data class User(val username:String,val price:Double)

只需要一行代碼 就可以實現(xiàn)了,關(guān)鍵字data表明當(dāng)前類是一個數(shù)據(jù)類,當(dāng)類中沒有任何代碼的時候大括號也可以省略
測試一下代碼:

fun main() {
    val userA=User("kot","男")
    val userB=User("kot","男")
    println(userA)
    println("userA equals userB "+(userA==userB))
}

打印結(jié)果:
User(username=kot, sex=男)
userA equals userB true

二、單例類
Java中的單例是用關(guān)鍵字private將類的構(gòu)造函數(shù)私有化,然后外部提供一個getInstance的靜態(tài)方法,判斷當(dāng)前類是否為空,如果是null,就需要創(chuàng)建一個新的實例,否則直接返回緩存的實例即可。kotlin的調(diào)用更加簡單,

object Singleton {
}

這樣就定義了一個單例類了,是不是很簡單

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容