私は次のコードを持っていますが、なぜlist.head.effects =
ここでその部分が必要なのか疑問に思いました。私の理解では、均一アクセス原則は、リストは、だけで返される必要があると言っていますlist.head.effects
。その時点で、私はリストにアクセスできます。しかし、実際に割り当てを機能させるには、以下のように割り当てる必要があります。それは評価しますEntrance :: list.head.effects
が、どこにも割り当てないということでしょうか?私はまだ可変の世界に深く入りすぎていますか?
def addEntrance(list: List[Tile]) = list.head.effects = Entrance :: list.head.effects
case class Tile(x: Int, y: Int) {
var effects: List[_ >: Effect] = List()
}
case class Entrance extends Effect
いずれにせよ、これを行うためのより良い方法はありますか?