如何快速创建一个List[Int]
包含 1 到 100 的内容?
我试过List(0 to 100)
了,但它返回List[Range.Inclusive]
谢谢
如何快速创建一个List[Int]
包含 1 到 100 的内容?
我试过List(0 to 100)
了,但它返回List[Range.Inclusive]
谢谢
尝试
(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 ( :
)‘某事’( _
)重复( *
)”
List.range(1,101)
第二个参数是独占的,所以这会产生一个从 1 到 100 的列表。