Golang itération sur la carte

Golang itération sur la carte
Une carte est une collection non ordonnée de paires de valeurs clés. Les cartes sont rapides et efficaces pour les recherches, les mises à jour et les suppressions rapides en utilisant les clés uniques.

Par conséquent, apprendre à travailler avec des cartes peut être crucial en tant que développeur Go. Cet article essaiera de répondre à quelques questions concernant les cartes dans le langage de programmation Go.

Comment créer une carte

Vous pouvez créer une carte en Go en utilisant la syntaxe ci-dessous:

map [key_data_type] value_data_type

Nous commençons par la carte des mots clés suivie du type de données de la clé. Ensuite, nous définissons le type de données pour les valeurs et, enfin, une paire de bretelles bouclées.

La syntaxe ci-dessus crée une carte vide.

Par exemple, pour créer une carte vide avec le type int comme les touches et le type de chaîne comme valeurs, nous pouvons faire:

var my_map map [int] chaîne

Si vous ne voulez pas de carte vide, vous pouvez attribuer des valeurs pendant la création comme indiqué ci-dessous:

var my_map map [int] string 1: "a", 2: "b", 3: "c", 4: "d"

La deuxième méthode pour créer une carte est la carte Litteral Go. Un exemple est comme indiqué:

my_map: = map [int] string

Ce qui précède crée une carte vide.

Go vous fournit également la méthode Make (), que vous pouvez utiliser pour créer une carte. L'exemple ci-dessous crée une carte vide des paires de tronçon de chaîne.

my_map: = map [String] float64

Comment imprimer une carte

L'opération la plus simple que vous pouvez effectuer avec une carte est de l'imprimer. Pour cela, nous pouvons utiliser la méthode println à partir du package FMT.

package principal
Importer "FMT"
funcmain ()
my_map: = map [int] string
1: "A",
2: "B",
3: "C",
4: "D",
5: "E",

fmt.Println (my_map)

Le code ci-dessus doit imprimer la carte stockée dans la variable «my_map». La sortie résultante est comme indiqué:

Carte [1: A 2: B 3: C 4: D 5: E]

Comment itérer sur les clés et les valeurs d'une carte

Itération sur une carte signifie que nous obtenons chaque paire de valeurs clés consécutives dans la carte. Nous pouvons y parvenir en utilisant le classique pour Loop et l'opérateur de gamme.

Un exemple est comme indiqué:

my_map: = map [int] string
1: "A",
2: "B",
3: "C",
4: "D",
5: "E",

pour la clé, valeur: = plage my_map
fmt.Printf ("clé:% d valeur:% s \ n", clé, valeur)

En Go, appeler l'opérateur de plage sur une carte renvoie deux valeurs: la clé et la valeur. L'utilisation de la boucle pour nous permet d'obtenir chaque clé et valeur dans la carte.

La sortie résultante:

Clé: 5 Valeur: E
Clé: 1 valeur: A
Clé: 2 Valeur: B
Clé: 3 Valeur: C
Clé: 4 Valeur: D

Comment itérer les clés uniquement sur une carte

Comme mentionné, l'utilisation de l'opérateur de plage sur une carte renvoie la clé et les paires de valeur. Cependant, nous ne pouvons récupérer qu'une seule valeur, comme indiqué ci-dessous:

pour la clé: = plage my_map
fmt.Println ("clé:", clé)

L'exemple ci-dessus ne doit renvoyer les clés de la carte que:

Clé: 2
Clé: 3
Clé: 4
Clé: 5
Clé: 1

Comment itérer les valeurs dans une carte

De même, vous pouvez récupérer les valeurs de la carte à l'aide de la syntaxe ci-dessous:

pour _, valeur: = range my_map
fmt.Println ("valeur:", valeur)

Sortir:

Valeur: A
Valeur: B
Valeur: C
Valeur: D
Valeur: E

Conclusion

Vous pouvez itérer sur la clé et les valeurs d'une carte en utilisant l'opérateur de plage. Vous pouvez également filtrer et obtenir uniquement les touches ou les valeurs indiquées dans ce guide.

Codage heureux!