ホームページ > バックエンド開発 > Golang > Go マップからキーのスライスを効率的に取得するにはどうすればよいですか?

Go マップからキーのスライスを効率的に取得するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-12-21 12:43:23
オリジナル
144 人が閲覧しました

How Can I Efficiently Retrieve a Slice of Keys from a Go Map?

Go マップからキーのスライスを取得する

Go マップからキーのスライスを取得するには、マップを反復処理します。そして手動でキーをスライスにコピーします。このアプローチは簡潔ですが、追加のメモリ割り当てと不必要なコピーが必要です。

再割り当てを排除するより効率的な代替方法は、範囲ループ内でスライスのメンバーを直接割り当てることです。

keys := make([]int, len(mymap))

for i, k := range mymap {
    keys[i] = k
}
ログイン後にコピー

Byスライスの容量を事前に指定すると、キーを追加または削除する機能を維持しながら、再割り当てのオーバーヘッドを回避できます。このアプローチは、特に大規模なマップの場合、より効率的です。

以上がGo マップからキーのスライスを効率的に取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート