0
我有一個類定義和兩個函數定義在scala中使用或不使用泛型類型創建實例有什麼不同?
class Queue[T] (
private val leading: List[T]
private val trailing: List[T]
){}
def a[T](xs: T*) = new Queue[T](xs.toList, Nil)
def b[T](xs: T*) = new Queue(xs.toList, Nil)
從這裏,類與泛型類型定義,以及兩個函數的作用。
但是在這裏,兩個函數的區別在於創建實例時。
工作都很好,沒有錯誤與下面的表達式創建:
a(1,2,3,4)
b(1,2,3,4)
a[Int](1,2,3,4)
b[Int](1,2,3,4)
但是,我想不出有什麼區別。
如果您爲'Queue'和'b'的類型參數選擇了不同的名稱,談論這個會容易一些。 –