Sprawdzanie, czy klucz istnieje
Część sekcji Podstawy ścieżki GO w Coddy. Lekcja 89 z 109.
W Go możesz sprawdzić, czy klucz istnieje w mapie, używając formy przypisania z dwiema wartościami. Jest to ważne, ponieważ odwołanie się do nieistniejącego klucza zwraca wartość zerową, co może być mylące.
Utwórz mapę kodów krajów:
countries := map[string]string{
"US": "United States",
"CA": "Canada",
}
// Sprawdź, czy "UK" istnieje w mapie
value, exists := countries["UK"]
fmt.Println("Value:", value, "Exists:", exists)Wynik:
Value: Exists: falseWartość logiczna exists informuje, czy klucz został znaleziony. Użyj jej w instrukcjach warunkowych:
if _, exists := countries["US"]; exists {
fmt.Println("US is in the map")
}Wynik:
US is in the mapWyzwanie
PoczątkującyW tym wyzwaniu poćwiczysz sprawdzanie, czy klucz istnieje w mapie. Masz mapę ocen uczniów i musisz sprawdzić, czy ocena konkretnego ucznia istnieje w mapie.
Uzupełnij kod, aby sprawdzić, czy uczeń 'Emma' istnieje w mapie ocen, i wyświetlić odpowiedni komunikat.
Spróbuj swoich sił
package main
import "fmt"
func main() {
// Mapa ocen uczniów
grades := map[string]int{
"John": 85,
"Sarah": 92,
"Mike": 78,
"Lisa": 95,
}
// Uczeń do sprawdzenia
studentToCheck := "Emma"
// TODO: Sprawdź, czy studentToCheck istnieje w mapie grades
// i zapisz wynik w zmiennej o nazwie 'exists'
// Wskazówka: Użyj idiomu comma-ok
// Wypisz wynik
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)
}
}Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory porównania i logiczne
Operatory porównania – część 1Operatory porównania – część 2Logiczny operator ANDLogiczny operator ORLogiczny operator NOTPodstawy kolejności wykonywania operatorówPodsumowanie – porównywanie7Sterowanie przepływem: pętle
Jak działa pętla `for`Pętla `for` — podstawyPętla `for` — tylko warunekSłowo kluczowe `break`Słowo kluczowe `continue`Pętle zagnieżdżonePodsumowanie — powtarzanie działań2Zmienne i podstawowe typy danych
Czym jest zmiennaWnioskowanie o typie za pomocą `:=`Liczby całkowite (int)Liczby zmiennoprzecinkoweWartości logiczneCiągi znakówWartości zeroweStałeKonwencje nazewnictwaPodsumowanie – zmienne i typy5Podstawowe wejście/wyjście
Formatowane wyjścieSpecyfikatory formatuWyświetlanie typówPobieranie podstawowych danych od użytkownikaPodsumowanie — wejście i wyjście8Funkcje
Zrozumienie funkcjiDeklarowanie funkcjiWywoływanie funkcjiParametry funkcjiZwracanie jednej wartościZwracanie wielu wartościNazwane wartości zwracanePodstawy zakresu funkcjiPodsumowanie — tworzenie wielokrotnego użytku kodu11Typy złożone: wycinki
Wprowadzenie do wycinkówDeklarowanie literałów wycinkówTworzenie wycinków za pomocą `make`Długość a pojemność wycinkaDostęp do elementów wycinkaDodawanie elementówWycinanie z istniejących wycinków i tablicIterowanie po wycinkachKopiowanie wycinkówPodsumowanie — listy dynamiczne3Podstawowe operatory
Operatory arytmetyczneOperator dzieleniaOperator moduloOperator przypisaniaOperatory przypisania z działaniemZwiększanie i zmniejszaniePowtórka – obliczenia6Sterowanie przepływem: instrukcje warunkowe
Instrukcja `if`Słowo kluczowe `else`Słowo kluczowe `else if`Przesłanianie zmiennych w `if`Inicjalizacja zmiennychInstrukcja `switch``switch` z wyrażeniami`switch` bez wyrażeniaSłowo kluczowe `fallthrough`Podsumowanie — podejmowanie decyzjiPoćwicz samodzielnie: Kompilator Go online