2010-03-25 37 views

回答

36

嘗試

(0 to 100).toList 

您嘗試的代碼創建一個帶有單個元素的列表 - 範圍。您可能還能夠做到

List(0 to 100:_*) 

編輯

List(...)呼叫採用可變數量的參數(xs: A*)。與Java中的可變參數不同,即使您通過Seq作爲參數(RangeSeq),它仍會將其視爲varargs參數中的第一個元素。 :_*表示「將此參數視爲整個可變參數Seq,而不僅僅是第一個元素」。

如果你看過: A*爲 「一個(:) 'A'(A)重複(*)」,你能想到的:_*爲 「爲重複(:) '東西'(_)(*)」

+0

謝謝,做什麼:_ *在List(0到100:_ *)中做什麼? – portoalet 2010-03-25 10:01:17

+0

嗯。這爲我返回類型'List [scala.collection.immutable.Range.Inclusive]'。 @Eastsun似乎返回正確的類型。 – cevaris 2014-09-10 16:18:46

12
List.range(0,101) 
+0

List.range(1,101) – 2011-06-30 12:56:34