我想要创建一个数组,其中包含相同的值重复很多次,比如1,000,000。scala 2.11.8如何填充数组
我在想使用类似Array.fill(1000000)(0)的东西。但是,在阅读了Scala 2.11.8的文档之后,我发现在这个版本中没有这样的Array成员。
有没有其他的方法可以不使用循环创建数组?在此先感谢您的帮助。
我想要创建一个数组,其中包含相同的值重复很多次,比如1,000,000。scala 2.11.8如何填充数组
我在想使用类似Array.fill(1000000)(0)的东西。但是,在阅读了Scala 2.11.8的文档之后,我发现在这个版本中没有这样的Array成员。
有没有其他的方法可以不使用循环创建数组?在此先感谢您的帮助。
您可以使用范围遍历所需长度(在您的情况下为1000000
次),然后在每次迭代中返回默认值0
,如下所示。
val arr:Array[Int] = (1 to 1000000 map(_ => 0)).toArray
Stream.continually(0).take(1000000).toArray
会这样做..但是为什么在世界上你想要这样的东西?
这将这样的伎俩:
Array.fill[Int](0)(1000000)
在这里阅读更多:https://alvinalexander.com/scala/scala-list-class-examples
你有没有试过'fill'自己吗?填充方法已经存在于scala 2.11.8中。 – Eastsun