Scala case類

2022-05-13 15:07 更新

Scala可以創(chuàng)建具有常見內(nèi)容填充的類。

大多數(shù)時候,當我們定義一個類時,我們必須編寫toString,hashCode和equals方法。

Scala提供了用于填充這些空白的case類機制,以及支持模式匹配。

case類提供與普通類相同的功能,但編譯器生成toString,hashCode和equals方法,您可以覆蓋。

可以在不使用新語句的情況下實例化Case類。

默認情況下,case類的構(gòu)造函數(shù)中的所有參數(shù)都成為case類的屬性。

例子

以下是創(chuàng)建case類的方法:

case class Stuff(name:String, age: Int)

我們可以創(chuàng)建一個沒有關(guān)鍵字new的Stuff實例:

vals = Stuff("David", 45)
s: Stuff = Stuff(David,45)

調(diào)用case類的String方法:

s.toString

Stuff的equals方法做了深入的比較:

s == Stuff("David",45)
s == Stuff("David",43)

而實例具有屬性:

s.name
s.age

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號