valueの索引のためのデータ構造。keyの値には重複を許さない。内部的にはHashMapが使われており、要素を挿入した順番は保持されない。B)*)が呼ばれている。Builderを使ってMapを作成ファイルやDBなどから大量のデータを読み込んで、immutableなMapを作りたい場合はBuilderを使うと良い。...b.result}mutableなデータ(builder)は外に見せないように閉じ込めている。例外処理のコードを書くのは面倒なので、Optionを返すこともできる。NoneOptionを使う利点は、keyに対応するentryがあってもなくてもコードの流れをさまたげないようにプログラミングできること。何もしないように定義されていることによる。エントリが見つからないときのデフォルト値を与えるgetOrElseを使う。N/A変更可能(mutable)なマップを使う上記の例でmapに新しいエントリを追加すると、新しいMapが生成される。placeで上書きしたい場合は、scala.collection.mutable.Mapを使う。mutable.Mapの作成+=で追加、-=で削除。default)を使う。Apple)応用例getOrElseUpdateはエントリが存在しない場合の処理を一行に納めることができるので重宝する。(初期化に必要な処理をする。createNewEntry)}キャッシュとしてマップを使うMapにエントリを格納するとMapから各エントリへの参照が保存される。collector(GC)が参照関係を考慮してエントリを含むメモリ領域を回収してくれない。collection)による回収の対象にしてくれる。初期化に時間がかかったり、メモリを大量に使うようなオブジェクトの一時的なキャッシュとしてWeakHashMapを使う。自分で定義したデータ構造をMapのkeyとして使うときにはhashCodeとequalsのmethodを定義し、keyの値による検索ができるようにする必要がある。