Instrukcja `switch`
Część sekcji Podstawy ścieżki GO w Coddy. Lekcja 39 z 109.
Poznajmy instrukcję switch w Go, która pozwala czyściej sprawdzać wiele warunków niż za pomocą wielu instrukcji if/else if.
Najpierw utwórzmy prosty program, który sprawdza numer dnia i wypisuje odpowiadającą mu nazwę dnia:
day := 3
switch day {
case 1:
fmt.Println("Monday")
case 2:
fmt.Println("Tuesday")
case 3:
fmt.Println("Wednesday")
default:
fmt.Println("Another day")
}
Po wykonaniu tego kodu program sprawdzi wartość day (czyli 3) i dopasuje ją do odpowiedniego case. Ponieważ day jest równe 3, program wykona kod w sekcji case 3 i wyświetli na ekranie:
WednesdayInstrukcja switch sprawdza kolejno każdy przypadek case, aż znajdzie dopasowanie. Jeśli nie znajdzie dopasowania, wykonuje kod w przypadku default. Dzięki temu kod jest znacznie czytelniejszy niż przy użyciu wielu instrukcji if/else if.
Wyzwanie
Początkującyswitch w Go. Otrzymasz zmienną reprezentującą dzień tygodnia i musisz uzupełnić instrukcję switch, aby wyświetlić, czy jest to dzień powszedni, czy weekend.Spróbuj swoich sił
package main
import "fmt"
func main() {
// Ta zmienna oznacza dzień tygodnia
day := "Saturday"
// TODO: Uzupełnij instrukcję switch, aby sprawdzić, czy dany dzień jest dniem roboczym, czy należy do weekendu
switch day {
// Dodaj przypadki dla dni weekendowych (Saturday i Sunday) i wypisz "It's the weekend!"
// Dodaj przypadek default dla dni roboczych i wypisz "It's a weekday."
}
}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