Instrukcje warunkowe

Instrukcje warunkowe w Javie umożliwiają wykonanie różnych bloków kodu w zależności od spełnienia określonych warunków logicznych. Dzięki nim, program może podejmować decyzje i wykonywać różne akcje w odpowiedzi na zmienne okoliczności. Java oferuje kilka rodzajów instrukcji warunkowych, takich jak if, else if, else, oraz switch.

Instrukcja if

Instrukcja if pozwala na wykonanie bloku kodu, tylko jeśli spełniony jest określony warunek.

int liczba = 10;

if (liczba > 0) {
    System.out.println("Liczba jest dodatnia.");
}

Instrukcja ifelse

Instrukcja ifelse rozszerza instrukcję if, umożliwiając wykonanie alternatywnego bloku kodu, jeśli warunek nie jest spełniony.

int liczba = -5;

if (liczba > 0) {
    System.out.println("Liczba jest dodatnia.");
} else {
    System.out.println("Liczba jest ujemna lub równa zero.");
}

Instrukcja ifelse ifelse

Instrukcja ifelse ifelse umożliwia testowanie serii warunków, jeden po drugim. Jeśli żaden z warunków nie jest spełniony, wykonywany jest blok kodu po else.

int liczba = 0;

if (liczba > 0) {
    System.out.println("Liczba jest dodatnia.");
} else if (liczba < 0) {
    System.out.println("Liczba jest ujemna.");
} else {
    System.out.println("Liczba jest równa zero.");
}

Instrukcja switch

Instrukcja switch umożliwia wykonanie różnych bloków kodu w zależności od wartości wyrażenia. Jest szczególnie użyteczna, gdy trzeba porównać tę samą zmienną (lub wyrażenie) z wieloma różnymi wartościami.

int miesiac = 4;
String nazwaMiesiaca;

switch (miesiac) {
    case 1: nazwaMiesiaca = "Styczeń"; break;
    case 2: nazwaMiesiaca = "Luty"; break;
    case 3: nazwaMiesiaca = "Marzec"; break;
    case 4: nazwaMiesiaca = "Kwiecień"; break;
    default: nazwaMiesiaca = "Nieznany"; break;
}

System.out.println("Miesiąc: " + nazwaMiesiaca);

W powyższym przykładzie, switch sprawdza wartość zmiennej miesiac i porównuje ją z kolejnymi przypadkami (case). Jeśli znajdzie dopasowanie, wykonuje się blok kodu po case aż do napotkania break, który kończy instrukcję switch. Jeśli nie zostanie znalezione żadne dopasowanie, wykonany zostanie blok kodu po default.

Uwagi

  • Instrukcja switch w nowszych wersjach Javy (od Java 12) obsługuje również nową, bardziej ekspresyjną składnię, która nie wymaga break i pozwala na bezpośrednie zwracanie wartości w case.
  • Wartością w instrukcji switch może być int, char, String oraz kilka innych typów.
  • Warto pamiętać, że instrukcje warunkowe mogą być zagnieżdżane, co oznacza, że wewnątrz jednej instrukcji warunkowej może znajdować się kolejna.