Menu
Coddy logo textTech

Verificare l'esistenza di una chiave

Fa parte della sezione Fondamenti del percorso GO di Coddy. Lezione 89 di 109.

In Go, puoi verificare se una chiave esiste in una mappa usando la forma di assegnazione a due valori. Questo è importante perché l’accesso a una chiave inesistente restituisce il valore zero, che potrebbe essere fuorviante.

Crea una mappa dei codici dei paesi:

countries := map[string]string{
    "US": "United States",
    "CA": "Canada",
}

// Controlla se "UK" esiste nella mappa
value, exists := countries["UK"]
fmt.Println("Value:", value, "Exists:", exists)

Risultato:

Value:  Exists: false

Il valore booleano exists ti dice se la chiave è stata trovata. Usalo nelle istruzioni condizionali:

if _, exists := countries["US"]; exists {
    fmt.Println("US is in the map")
}

Risultato:

US is in the map
challenge icon

Sfida

Principiante

In questa sfida, ti eserciterai a verificare se una chiave esiste in una mappa. Hai una mappa dei voti degli studenti e devi verificare se il voto di uno studente specifico esiste nella mappa.

Completa il codice per verificare se lo studente 'Emma' esiste nella mappa dei voti e stampa un messaggio appropriato.

Provalo tu

package main

import "fmt"

func main() {
	// Mappa dei voti degli studenti
	grades := map[string]int{
		"John":  85,
		"Sarah": 92,
		"Mike":  78,
		"Lisa":  95,
	}

	// Studente da controllare
	studentToCheck := "Emma"

	// TODO: Controlla se studentToCheck esiste nella mappa grades
	// e memorizza il risultato in una variabile chiamata 'exists'
	// Suggerimento: usa l'idioma comma-ok


	// Stampa il risultato
	if exists {
		fmt.Printf("%s's grade exists in the map\n", studentToCheck)
	} else {
		fmt.Printf("%s's grade does not exist in the map\n", studentToCheck)
	}
}
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Compilatore Go online