Menu
CoddyTech

`switch` z wyrażeniami

Część sekcji Podstawy ścieżki GO w Coddy. Lekcja 40 z 109.

Nauczmy się używać wyrażeń w instrukcjach switch w Go, które pozwalają nam bezpośrednio sprawdzać warunki w każdym case.

Najpierw zobaczmy, jak używać instrukcji switch z warunkiem w każdym case, aby sprawdzić, czy liczba jest dodatnia, ujemna czy równa zero:

num := -5
switch {
case num > 0:
    fmt.Println("Positive number")
case num < 0:
    fmt.Println("Negative number")
default:
    fmt.Println("Zero")
}

Po wykonaniu tego kodu program wyświetli na ekranie:

Negative number

Zwróć uwagę, że używamy switch { bez żadnej wartości po nim. Oznacza to, że Go będzie oceniać każde wyrażenie case jako warunek logiczny. Ponieważ num wynosi -5, drugi przypadek num < 0 daje wartość true, więc zostaje wyświetlony tekst "Negative number".

Możemy również zainicjalizować zmienną bezpośrednio w instrukcji switch. Zobaczmy, jak to działa:

switch num := -5; {
case num > 0:
    fmt.Println("Positive number")
case num < 0:
    fmt.Println("Negative number")
default:
    fmt.Println("Zero")
}

Po wykonaniu tego kodu otrzymujemy ten sam wynik:

Negative number

W tym przykładzie zadeklarowaliśmy i zainicjalizowaliśmy num bezpośrednio w instrukcji switch. Średnik oddziela inicjalizację od wyrażenia switch (które jest tutaj puste). Dzięki temu nasz kod jest bardziej zwięzły, a jego funkcjonalność pozostaje taka sama.

challenge icon

Wyzwanie

Początkujący
W tym wyzwaniu poćwiczysz używanie prostego wyrażenia switch w Go. Musisz uzupełnić kod, aby określić opis dnia na podstawie jego nazwy za pomocą instrukcji switch.

Zmienna dayName jest już zdefiniowana i ma wartość "Wednesday". Twoim zadaniem jest użyć wyrażenia switch, aby ustawić zmienną description na:
- "Start of the week" dla poniedziałku
- "Midweek" dla środy
- "Almost weekend" dla piątku
- "Weekend" dla soboty lub niedzieli
- "Regular day" dla każdego innego dnia

Spróbuj swoich sił

	// TODO: Napisz instrukcję switch, która ustawia opis na podstawie dayName
	// Dla poniedziałku: "Start of the week"
	// Dla środy: "Midweek"
	// Dla piątku: "Almost weekend"
	// Dla soboty lub niedzieli: "Weekend"
	// Dla każdego innego dnia: "Regular day"
	
	
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator Go online