我试图使用var和for循环在scala中以命令式计算整数列表的累积和,这似乎可行,但我想知道我们是否可以在不使用var和counter的情况下更好地做到这一点? / p>
这是我的代码
val ar1 = Array[Int](1, 0, 1, 0, 0)
//> ar1 : Array[Int] = Array(1, 0, 1, 0, 0)
var cumsum = 0.0;
//> cumsum : Double = 0.0
for (i <- 0 until ar1.length) {
if (i == 0) {
cumsum = 0;
} else {
cumsum = ar1(i - 1) * 0.99 + cumsum;
}
println(cumsum)
}
这是我期望的输出
//> 0.0
//| 0.99
//| 0.99
//| 1.98
//| 1.98