Mappe
Lezione 17 di 21 del corso Slice e mappe in GoLang di Coddy.
Una mappa è un tipo di collezione, proprio come un array e uno slice. Memorizza i dati in coppie chiave-valore e consente di trovare rapidamente i valori.
La sintassi per dichiarare una mappa è la seguente:
products := map[string]int{}Come per la dichiarazione di variabili per array e slice, possiamo usare la dichiarazione breve (:=) oppure la parola chiave var seguita dal nome, poi dalla parola chiave map; tra parentesi quadre specifichiamo il tipo della chiave e, infine, il tipo del valore o dell'elemento.
Anche gli slice e gli array sono tipi chiave-valore, ma la chiave è semplicemente l'indice. Nelle mappe, possiamo usare qualsiasi tipo come chiave, purché sia confrontabile. Di solito, i tipi sono int e string.
Tutti gli elementi della mappa devono essere dello stesso tipo; non puoi mescolare tipi diversi in un'unica mappa.
Inizializziamo la nostra mappa:
products := map[string]int{
"iPhone": 1200,
"MacBook": 4000,
"Keyboard": 400,
}Come per gli slice e gli array, possiamo accedere agli elementi usando le chiavi. In questo caso, la chiave è quella che abbiamo definito per ciascun elemento. Per esempio, per ottenere il prezzo della tastiera:
fmt.Println("The Price of Keyboard:", products["Keyboard"])Output:
The Price of Keyboard: 400Possiamo stampare tutti gli elementi della mappa, proprio come con uno slice:
fmt.Println(products)E il risultato sarebbe:
map[iPhone:1200 MacBook:4000 Keyboard:400]
Sfida
FacileAbbiamo un insieme di libri, ciascuno con un numero diverso di pagine, come segue:
- Il libro di Python ha 300 pagine
- Il libro di Golang ha 400 pagine
- Il libro di Rust ha 500 pagine
Implementalo usando una mappa e stampa sullo schermo il numero di pagine del libro di Golang .
Provalo tu
package main
import "fmt"
func main() {
// Definisci una mappa
// Stampa il numero di pagine del libro su Golang
}Tutte le lezioni di Slice e mappe in GoLang
1Introduzione
IntroduzioneEsercitati da solo: Compilatore Go online