在下面的申請方法什麼是「爲:A *」?什麼是A *方法參數?
List(1, 2, 3)
constucts類型的列表:Cons(1,Cons(2,Cons(3,Nil)))
從讀取的方法的代碼看起來它是一種語法糖用於相同類型的多個 類型參數?
sealed trait List[+A]
case object Nil extends List[Nothing]
case class Cons[+A](head: A, tail: List[A]) extends List[A]
object List {
def apply[A](as: A*): List[A] =
if (as.isEmpty) Nil
else {
Cons(as.head, apply(as.tail: _*))
}
}
如果這是真的should'nt這是同樣有效:
object List {
def apply[A](asHead: A , asTail : A): List[A] =
if (asHead.isEmpty) Nil
else {
Cons(asHead.head, apply(asTail.tail: _*))
}
的可能重複[如何Scala可以在方法定義中接收多個參數?](http://stackoverflow.com/questions/1438762/how-can-scala-receive-multiple-parameters-in-a-method-definition) – 2014-12-27 13:47:53
提示:Google for「斯卡拉明星「。 – 2014-12-27 13:48:08