ホームページ  >  記事  >  バックエンド開発  >  マップの使い方をGolang言語で詳しく解説

マップの使い方をGolang言語で詳しく解説

PHPz
PHPzオリジナル
2023-03-30 13:35:252016ブラウズ

近年、Golang (Go とも呼ばれる) は、特にネットワーク プログラミングや並行プログラミングの分野で大きな注目を集めているプログラミング言語です。 Go 言語は使いやすく効率的なデータ構造マップを提供し、開発者がキーと値のペアを簡単に保存および処理できるようにします。

この記事では、マップの定義と初期化の方法、マップの操作方法、マップを使用する際のベストプラクティスなど、Golang 言語でのマップの使い方を紹介します。

地図とは何ですか?

コンピューター プログラミングでは、マップは抽象データ型であり、連想配列、ハッシュ テーブル、または辞書とも呼ばれます。 Map は、キーの対応する値を迅速に検索、更新、削除するために使用できるキーと値のペアの保存方法を提供します。

Golang では、map は参照型であり、そのゼロ値は nil です。マップ タイプを定義するには、次の構文を使用できます。

var m map[keyType]valueType

このうち、keyType はキーのタイプを表し、valueType は値のタイプを表します。要素を含まないマップを定義するには、次の構文を使用できます。

var m map[keyType]valueType{}

Initialize map

Golang には、マップを初期化する 2 つの方法があります。make 関数を使用する方法と、リテラル初期化を使用する方法です。 。

make 関数を使用してマップを初期化する

make 関数を使用してマップを初期化するには、次の構文を使用できます。

m := make(map[keyType]valueType)

この関数は、新しい、空の地図。たとえば、キーとして文字列型、値として整数型を使用してマップを定義するには、次のコードを使用できます。

m := make(map[string]int)

リテラルを使用してマップを初期化する

リテラルを使用してマップを初期化する

m := map[keyType]valueType{
    key1: value1,
    key2: value2,
    ...
    keyN: valueN,
}

このうち、key1、key2...keyN はキー、value1、value2...valueN は値です。たとえば、キーとして文字列型、値として整数型を使用してマップを定義し、2 つの要素を初期化するには、次のコードを使用できます。

m := map[string]int{
    "apple": 4,
    "banana": 6,
}

操作マップ

Golang では、マップ操作追加、削除、検索、変更を含みます。

要素の追加

要素をマップに追加するには、次の構文を使用できます。

m[key] = value

ここで、key は追加する要素のキー、value は対応する値。たとえば、キーが「orange」で、上で定義した値が 3 ~ m の要素を追加するには、次のコードを使用できます。

m["orange"] = 3

要素の削除

要素をマップの場合は、次の構文を使用できます。

delete(m, key)

ここで、 key は削除する要素のキーです。たとえば、上で定義した m からキー「バナナ」を持つ要素を削除するには、次のコードを使用できます。

delete(m, "banana")

要素の検索

マップから要素を検索するには、次の構文を使用できます。

value, ok := m[key]

このうち、key は検索する要素のキー、value は対応する値、ok は要素が見つかったかどうかを示します。たとえば、上記で定義した m からキー「apple」を持つ要素を検索するには、次のコードを使用できます。

value, ok := m["apple"]
if ok {
    fmt.Println(value) // 4
}

要素の変更

マップ内の要素を変更するには、次のコードを使用できます。要素の追加と同じ方法 構文:

m[key] = newValue

このうち、key は変更する要素のキー、newValue は対応する新しい値です。たとえば、上で定義した m のキー「orange」を持つ要素の値を 2 に変更するには、次のコードを使用できます。

m["orange"] = 2

ベスト プラクティス

map を使用する場合、いくつかの点に注意する必要があります。 ベスト プラクティス:

  • マップを宣言して初期化するときは、常に make 関数を使用し、マップの容量を指定してください。
  • マップを移動するときは、for ループ インデックスを使用する際のトラブルを避けるために、常に range キーワードを使用してください。
  • マップ内に要素が存在するかどうかを確認する場合は、len 関数を使用しないでください。これはマップ全体を走査することになり、効率的な方法ではないためです。

全体として、Golang のマップは、キーと値のペアをすばやく保存および検索するために使用できる、非常に便利なデータ構造です。マップの使用に習熟すると、プログラミングの効率とコードの品質が大幅に向上します。

以上がマップの使い方をGolang言語で詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。