在Scala中,泛型的使用方法與Java類似,可以在類、方法和函數等地方使用泛型。以下是一個簡單的示例:
// 定義一個參數化類型的類
class Box[T](value: T) {
def getValue: T = value
}
// 使用泛型類
val intBox = new Box[Int](10)
println(intBox.getValue) // 輸出:10
val strBox = new Box[String]("Hello")
println(strBox.getValue) // 輸出:Hello
// 泛型方法
def printValue[T](value: T): Unit = {
println(value)
}
printValue(10) // 輸出:10
printValue("Hello") // 輸出:Hello
在上面的示例中,Box
類是一個參數化類型的類,通過[T]
指定泛型類型。在實例化Box
類的時候需要指定具體的類型,比如Box[Int]
和Box[String]
。泛型方法printValue
也是類似的,通過[T]
指定泛型類型,在調用時可以傳入不同的類型參數。