0
配列内のハッシュマップを更新しようとしていますが、そうすることはできません。HashMapをスカラーに追加する
def incrementCount(combiners: Array[Combiner], row: Row): Array[Combiner] = {
val tempMapTypes = new scala.collection.mutable.HashMap[String, (String, Array[String])]
for (i <- 0 until row.length) {
val array = getMyType(row(i), tempMapTypes)
for (elem <- tempMapTypes) {
combiners(i).mapTypes.update(elem._1,elem._2) <<<< this update doesnt work for me, always mapTypes is empty
}
}
}
この場合の初期化の後、前述したようにこれは
case class Combiner(<other variables>, mapTypes: mutable.HashMap[String, (String, Array[String])])
combiners
}
コンバイナクラスであり、これは、それが別の方法で初期化されてしまったか、である...
val mapTypes = new scala.collection.mutable.HashMap[String, (String, Array[String])]
combiners += new Combiner(....,mapTypes)
どのようにmapTypesを追加するのですか?上記の更新コードは私にはうまくいかないようです。
class Combiner(..., mapTypes: mutable.HashMap[String, (String, Array[String])]) {
...
def ++=(otherMapTypes: mutable.HashMap[String, (String, Array[String])]): Unit =
this.mapTypes ++= otherMapTypes
}
その後、次の操作を行うことができます:あなたはCombiner
に++=
メソッドを定義することができますあなたの更新コードを使用したい場合は