Mappa delle mappe Golang

Mappa delle mappe Golang
Una mappa è una raccolta di coppie di valore chiave non ordinate. Le mappe sono utili quando dobbiamo archiviare i dati correlati e accedervi in ​​base alle chiavi uniche. Le mappe sono spesso indicate come dizionari o hash in altri linguaggi di programmazione.

Se sei nuovo nelle mappe di Golang, controlla il nostro tutorial sull'argomento per saperne di più. In questa guida, ci concentreremo sulla creazione e la lavorazione con mappe nidificate.

Ciò che è nidificato mappa?

Una mappa nidificata è semplicemente una mappa delle mappe. Ciò significa che le coppie di valore chiave della mappa esterna sono un'altra mappa.

Golang crea una mappa nidificata

Possiamo definire una mappa nidificata nello stesso modo in cui dichiariamo una mappa normale. Iniziamo impostando il tipo di dati della chiave (mappa di livello superiore) e il tipo di valore. Poiché questa è una mappa nidificata, il valore della mappa di alto livello è una mappa.

Un codice di esempio è come mostrato di seguito:

Pacchetto principale
func main ()
nidificato: = mappa [int] mappa [string] string
1:
"una mela",
"B": "Banana",
"C": "Coconut",
,
2:
"un tè",
"b": "caffè",
"C": "Milk",
,
3:
"A": "cibo italiano",
"b": "cibo indiano",
"c": "cibo cinese",
,

Il codice precedente crea un semplice menu di ristoranti utilizzando mappe nidificate. Nella prima mappa, impostiamo il tipo di dati come int. Dichiariamo quindi il valore come una mappa del tipo che contiene le sue coppie di valori chiave di stringa di tipo.

Mappa nidificata stampata per Golang

Possiamo stampare una mappa nidificata usando i metodi di stampa predefiniti. Ad esempio, possiamo utilizzare il metodo println dal pacchetto FMT come mostrato:

fmt.Println (nidificato)

Questo dovrebbe restituire un output come mostrato:

Mappa [1: mappa [UN:Mela B: Banana C: Coconut] 2: Mappa [UN:Tè B: Caffè C: latte] 3: mappa [UN:Cibo italiano B: Cibo indiano C: cibo cinese]]

Golang iterare la mappa nidificata

Possiamo iterare su una mappa nidificata usando il loop e un operatore di portata. Un esempio è fornito di seguito:

per k, v: = intervallo nidificato
fmt.Println (k, v)

Il codice precedente dovrebbe restituire le mappe nidificate come:

1 mappa [A: Apple B: Banana C: Coconut]
2 mappa [A: tè B: caffè c: latte]
3 mappa [A: cibo italiano B: cibo indiano C: cibo cinese]

Per iterare su una singola mappa, possiamo accedervi usando la sua chiave. Ad esempio, per iterare sulla prima mappa nidificata (chiave 1), possiamo fare quanto segue:

per k, v: = gamma nidificata [1]
fmt.Println (k, v)

Golang Elimina la mappa nidificata

Possiamo anche eliminare una coppia di valore chiave da una mappa nidificata usando il metodo ELETE. Lo snippet di codice è come mostrato:

Elimina (nidificato [1], "A")
fmt.Println (nidificato)

Il codice precedente dovrebbe accedere alla mappa con il tasto 1 e rimuovere la chiave "A" dal dizionario risultante.

Un esempio risultante è fornito di seguito:

Mappa [1: mappa [B: Banana C: Coconut] 2: Mappa [UN:Tè B: Caffè C: latte] 3: mappa [UN:Cibo italiano B: Cibo indiano C: cibo cinese]]

Nota: la chiave "A" è stata rimossa dalla prima mappa nidificata.

Conclusione

Questa guida ha illustrato come lavorare con mappe nidificate o mappa delle mappe. Usando questo articolo, hai imparato a creare una mappa nidificata, iterare su un ciclo nidificato e inserire e rimuovere elementi da una mappa nidificata. Speriamo che tu abbia trovato questo articolo utile. Dai un'occhiata ad altri articoli di suggerimento Linux per ulteriori suggerimenti e tutorial.