17

如何快速创建一个List[Int]包含 1 到 100 的内容?

我试过List(0 to 100)了,但它返回List[Range.Inclusive]

谢谢

4

2 回答 2

37

尝试

(0 to 100).toList

您尝试的代码是创建一个包含单个元素的列表 - 范围。你也可以做

List(0 to 100:_*)

编辑

List(...)调用采用可变数量的参数 ( xs: A*)。与 Java 中的 varargs 不同,即使您将 aSeq作为参数传递(aRange是 a Seq),它仍然会将其视为 varargs 参数中的第一个元素。说“:_*将此参数视为整个 varargs Seq,而不仅仅是第一个元素”。

如果你读: A*作“an ( :)‘A’( A)重复( *)”,你可以认为:_*是“as ( :)‘某事’( _)重复( *)”

于 2010-03-25T09:54:28.963 回答
13
List.range(1,101)

第二个参数是独占的,所以这会产生一个从 1 到 100 的列表。

于 2010-03-25T11:11:36.437 回答