2017-02-07 53 views
-1

我對Scala中的泛型函數有個疑問。假設我有這樣的(人爲的例子)一個簡單的函數:指定第一個泛型的原因

def subList[A](list:List[A], start:Int, elementCap:Int): List[A] ={ 

爲什麼它需要第一[A]?作爲我爲什麼不能有簽名

def subList(list:List[A], start:Int, elementCap:Int): List[A] ={ 
+0

爲什麼要投票? – mercurial

回答

2

因爲在編程語言的任何時候您引用排序的任何一個變量,你需要的地方定義它。 A是一個參數類型,也就是說它就像一個變量,但是它指的是一個類型。 A不是一個常數,也就是說已知其他情況,所以它需要一個定義。

實際值將在實際調用該方法時具體提供。

相關問題