GO 言語でマップの割り当てサイズを増やすにはどうすればいいですか? 質問する

GO 言語でマップの割り当てサイズを増やすにはどうすればいいですか? 質問する

いつか新しい要素が追加されるオブジェクトのコレクションがあります。

内部マップのサイズを増やすにはどうすればいいですか?

要素数が割り当てられた数を超えるたびに、マップ全体を再割り当てする必要がありますか?

ベストアンサー1

Go の仕様では次のように述べられています:

組み込み関数 make を使用して、新しい空のマップ値が作成されます。この関数は、マップ タイプとオプションの容量ヒントを引数として受け取ります。

make(map[string]int) 
make(map[string]int, 100) 

初期容量はマップのサイズを制限するものではありません。マップは、格納されているアイテムの数に応じて大きくなります。

したがって、マップを作成したら、マップに割り当てる必要はありません。これは Go ランタイムによって内部的に処理されます。マップを作成するときに使用されるオプションの容量は、ヒントにすぎず、制限ではありません。

おすすめ記事