1

私はこのデータ構造を持っています:

var index : List[(Int, List[Int])] = Nil

次に、ある時点で、インデックスに要素を追加したいと思います。私はやろうとします:

index(position)._2 = new_elem :: index(position)._2

しかし、コンパイラは、私がreassignment to val.

それが役立つ場合は、次のコード行でインデックスに新しい位置を作成します。

index = (p, Nil) :: index

どうすればこの問題を克服できますか?

ありがとう。

4

2 に答える 2

1

問題: インデックスは変数 (および変更可能) ですが、リストは不変のデータ構造であるため、リスト全体のみを変更できます。

MutableListまたはMapを使用できます。

于 2013-08-29T11:44:07.610 に答える