2017-02-07 6 views
-1

スカラのジェネリック関数に関する質問があります。私はこのような単純な関数(不自然な例を)持っていると仮定します。第1ジェネリック型を指定する理由

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は定数ではなく、言い換えれば他のコンテキストで知られているので、定義が必要です。

メソッドが実際に呼び出されたときの実際の値は具体的に提供されます。

関連する問題