我从没想过我会问这么简单的问题但是如何在scala中更新数组元素
我在我的Main对象中声明了内部函数,我有这样的东西
object Main
{
def main(args: Array[String])
{
def miniFunc(num: Int)
{
val myArray = Array[Double](num)
for(i <- /* something*/)
myArray(i) = //something
}
}
}
但我总是得到一个例外,有人可以解释我为什么以及如何解决这个问题?
你能填写遗漏的细节吗?例如,评论的位置是什么?有什么例外? (最好用完整的代码示例提出问题并明确说明 什么 问题是。)
这是一个数组构造和更新的例子:
scala> val num: Int = 2
num: Int = 2
scala> val myArray = Array[Double](num)
myArray: Array[Double] = Array(2.0)
scala> myArray(0) = 4
scala> myArray
res6: Array[Double] = Array(4.0)
也许你正在做出这样的假设 num
代表你的数组的大小?实际上,它只是数组中的(唯一)元素。也许你想要这样的东西:
def miniFunc(num: Int) {
val myArray = Array.fill(num)(0.0)
for(i <- 0 until num)
myArray(i) = i * 2
}