【发布时间】:2019-10-28 19:43:59
【问题描述】:
最不推荐在 Scala 中使用 if 块进行分布式计算。我有代码,我想用 Scala 高阶方法替换 if。我怎样才能做到这一点。 详细代码给Here
包含 if 块的部分代码是。
var bat = DenseVector.fill(N)(new BAT12(d , MinVal , MaxVal ))
bat.foreach{x => x.BestPosition = x.position;x.fitness = Sphere(x.position) ; x.BestFitness = x.fitness}
bat.foreach(x =>
if(x.BestFitness < GlobalBest_Fitness)
{
GlobalBest_Fitness =x.BestFitness ;GlobalBest_Position = x.BestPosition
})
【问题讨论】:
-
问题不在于
if,问题在于使用了可变数据结构。而这与分布式计算无关。
标签: scala functional-programming distributed-computing