我有以下内容:
var x = some array Array[Double]
val n = 3
我想在x中为每个元素添加n,怎么样?我试过了:
x.map(v => v + n)
但那不起作用。
答案 0 :(得分:2)
你必须使用这样的第三个var:
val x2 = x.map(_ + n)
答案 1 :(得分:1)
如果您不想构建新的Array
但只想修改现有值中的值,那么:
for (i <- x.indices)
x(i) += n
通常,Scala集合API目前不提供执行就地变异的更高级别操作,因此您必须使用这样的低级代码。 (这将在Scala 2.13中发生变化。)
答案 2 :(得分:0)
您必须将map的返回输出写入变量以获取更新的数组。