Scala создает Список [Интервал]

Как я могу быстро создать a List[Int] это имеет 1 - 100 в нем?

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

Спасибо

17
задан giampaolo 16 October 2015 в 14:55
поделиться

2 ответа

Попробуйте

(0 to 100).toList

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

List(0 to 100:_*)

Edit

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

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

37
ответ дан 30 November 2019 в 10:43
поделиться
List.range(1,101)

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

13
ответ дан 30 November 2019 в 10:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: