Słowo kluczowe `fallthrough`
Część sekcji Podstawy ścieżki GO w Coddy. Lekcja 42 z 109.
W Go słowo kluczowe fallthrough pozwala kontynuować wykonywanie instrukcji w kolejnym przypadku instrukcji switch, nawet po znalezieniu dopasowania. Sprawdźmy, jak to działa.
Najpierw utwórzmy prostą instrukcję switch, która używa słowa kluczowego fallthrough do opisania liczby:
num := 15
switch {
case num < 20:
fmt.Print("Less than 20 ")
fallthrough
case num > 10:
fmt.Print("Greater than 10 ")
fallthrough
case num > 0:
fmt.Print("Positive number")
}Po wykonaniu tego kodu zobaczymy na ekranie wszystkie trzy komunikaty:
Less than 20 Greater than 10 Positive numberDzieje się tak, ponieważ pierwszy przypadek pasuje (15 jest mniejsze niż 20), a słowo kluczowe fallthrough zmusza Go do wykonania również drugiego przypadku. Następnie drugi przypadek również używa fallthrough, co sprawia, że Go wykonuje także trzeci przypadek. Bez fallthrough wykonałby się tylko pierwszy pasujący przypadek.
Pamiętaj, że fallthrough wykona następny przypadek niezależnie od tego, czy jego warunek jest prawdziwy, czy nie. W naszym przykładzie wszystkie warunki są spełnione dla liczby 15, ale następny przypadek wykonałby się nawet wtedy, gdyby jego warunek był fałszywy.
Wyzwanie
PoczątkującyW tym wyzwaniu poćwiczysz używanie słowa kluczowego fallthrough w instrukcji switch. Słowo kluczowe fallthrough pozwala kontynuować wykonywanie programu w następnym przypadku, nawet gdy dopasowanie zostało już znalezione.
Masz zmienną reprezentującą dzień tygodnia. Twoim zadaniem jest dodać słowo kluczowe fallthrough w odpowiednim miejscu, aby program wypisał zarówno 'It's a weekday!', jak i 'Time to work!', gdy dniem jest 'Monday'.
Spróbuj swoich sił
package main
import "fmt"
func main() {
// Zmienna reprezentująca dzień tygodnia
day := "Monday"
// Instrukcja switch sprawdzająca dzień
switch day {
case "Monday":
fmt.Println("It's a weekday!")
// TODO: Dodaj tutaj słowo kluczowe fallthrough, aby przejść do następnego przypadku
case "Tuesday", "Wednesday", "Thursday", "Friday":
fmt.Println("Time to work!")
case "Saturday", "Sunday":
fmt.Println("It's the weekend!")
default:
fmt.Println("Invalid day!")
}
}
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