在doc:
org.apache.spark.ml.linalg.Vector
@Since("2.0.0")
def foreachActive(f: (Int, Double) => Unit): Unit
我的代码是:
var map: Map[Int,Double] = Map()
vectors.first().foreachActive((a,b) => map += (a -> b))
println(map.max)
var maxValue: Map[Int,Double] = Map()
var maps: Map[Int,Double] = Map()
vectors.map(vec => {
vec.foreachActive((a,b) => maps += (a -> b))
maxValue += maps.max
})
println(maxValue)
控制台的结果是:
(257376,1.2809338454620642)
Map()
为什么我无法获得maxValue?