scala中物件提供isinstanceof和asinstanceof方法。
// 判斷物件是否為指定型別
val trueo***lse:boolean = 物件.isinstanceof[型別]
// 將物件轉換為指定型別
val 變數 = 物件.asinstanceof[型別]
object test01 ")}
}}
isinstanceof 只能判斷物件是否為指定類以及其子類的物件,而不能精確的判斷出,物件就是指定類的物件。如果要求精確地判斷出物件就是指定類的物件,那麼就只能使用 getclass 和 classof 。
object test02 "
)//true
//判斷p 的 型別 是否為person 類
val bool1 = p.getclass == classof[person]
println
(s"bool1 = $"
)//false
//判斷 p 的型別是否為student 類
val bool2 = p.getclass == classof[student]
println
(s"bool2 = $")}
}
Scala中的列舉型別
在scala的enumeration類中定義了乙個名為value的內部類,跟這個內部類同名的不帶引數的value方法每次都返回這個類的全新例項。也可以用過載value的方法給列舉值關聯特定的名稱,如下 定義列舉類.package com.mc.enum object genderenum exten...
Scala中結構型別 復合型別解析
scala具有豐富的資料結構型別,結構型別 定義乙個方法,該方法的入參是乙個匿名型別物件,該類包含若干個函式或方法,這樣就可以定義乙個具有結構型別的方法 當呼叫該方法時傳入具有具體實現方法的結構型別物件 注 1 函式的入參型別是乙個匿名型別 我們自己可以定義 2 通過type型別定義匿名型別例項物件...
Scala中的引數型別和延遲型別定義
在scala中,有兩種方式可以用來支撐高階物件。1.型別引數 trait dataops a val numbericops new dataops int 特質上有乙個泛型a,當例項化型別的時候可以填入 2.延遲定義到子類 trait dataops val numbericops new dat...