私は Scala でマップを操作しており、「キーに関連付けられた値がない場合は、それを作成し、それをマップに入れて返す」という通常のことを行っています。
def alphaMemory(key : AlphaMemoryKey) = {
var am = map.getOrElse(key, null)
if(am == null) {
am = new AlphaMemory(key)
map.put(key, am)
}
am
}
私には、これは慣用的な Scala コードとは思えません。ジャバって感じ。これをもっと簡潔に書く方法はありますか?Map.default() をオーバーライドして、新しい値を挿入して返すことができるように見えました。わかりません。
ありがとう!