Scala создать список [Int] - PullRequest
       11

Scala создать список [Int]

17 голосов
/ 25 марта 2010

Как быстро создать List[Int], в котором есть от 1 до 100?

Я пытался List(0 to 100), но он возвращает List[Range.Inclusive]

Спасибо

Ответы [ 2 ]

37 голосов
/ 25 марта 2010

Попробуйте

(0 to 100).toList

Код, который вы пытались создать список с одним элементом - диапазон.Вы также можете выполнить

List(0 to 100:_*)

Редактировать

Вызов List(...) принимает переменное количество параметров (xs: A*).В отличие от varargs в Java, даже если вы передадите Seq в качестве параметра (Range - это Seq), он все равно будет обрабатывать его как первый элемент в параметре varargs.:_* говорит: «обрабатывайте этот параметр как целые переменные Seq, а не только как первый элемент».

Если вы читаете : A* как «an (:) 'A' (A) повторяется (*) ", вы можете думать о :_* как" как (:) 'что-то' (_) повторяется (*) "

13 голосов
/ 25 марта 2010
List.range(1,101)

Второй аргумент является эксклюзивным, поэтому он создает список от 1 до 100.

...