2016-12-07 35 views

回答

1

::是一個由頭部和尾部組成的列表構造函數(與Nil相反)。換句話說,它是一種保證它至少包含一個元素(頭部)的列表。

可以在List.scala找到它的定義:https://github.com/scala/scala/blob/v2.11.8/src/library/scala/collection/immutable/List.scala#L439

那麼這個轉換確實是,它把cursor類型爲List[A]爲更具體的::[A],即允許訪問其tl變量,代表列表尾。這對於有效的update操作是必需的。