Zagnieżdżone if - else
Część sekcji Podstawy ścieżki Java w Coddy. Lekcja 32 z 73.
Możemy zagnieżdżać instrukcje if-else if-else jedna w drugiej. Dzięki temu możemy tworzyć hierarchiczne struktury podejmowania decyzji.
Pamiętaj, że głęboko zagnieżdżone instrukcje
if mogą utrudniać czytanie i utrzymywanie kodu.Na przykład:
if (age > 18) {
if (hasLicense) {
System.out.println("You can drive");
} else {
System.out.println("Get a license first");
}
} else {
System.out.println("Too young to drive");
}
Można je zagnieżdżać w nieskończoność:
if (condition1) {
if (condition2) {
if (condition3) {
// wykonuje się tylko wtedy, gdy condition1, condition2 i condition3 są prawdziwe
...
}
}
}Wyzwanie
PoczątkującyUtwórz program, który sprawdza, czy ktoś może przejechać się kolejką górską. Wymagania:
- Musi mieć co najmniej 12 lat
- Musi mieć więcej niż 150 cm wzrostu
- Jeśli spełnia oba wymagania, ale ma mniej niż 15 lat, musi być pod opieką osoby dorosłej
Wypisz dokładnie te komunikaty dla każdego przypadku:
- Jeśli jest za młoda:
Sorry, you're too young - Jeśli nie jest wystarczająco wysoka:
Sorry, you're not tall enough - Jeśli ma mniej niż 15 lat i nie ma przy sobie osoby dorosłej:
Sorry, you need an adult with you - Jeśli ma mniej niż 15 lat i jest z nią osoba dorosła:
You can ride with adult supervision! - Jeśli ma co najmniej 15 lat i jest wystarczająco wysoka:
You can ride by yourself!
Spróbuj swoich sił
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int age = scanner.nextInt(); // Nie zmieniaj tej linii
int height = scanner.nextInt(); // Nie zmieniaj tej linii
boolean hasAdult = scanner.nextBoolean(); // Nie zmieniaj tej linii
// Napisz swój kod poniżej
scanner.close();
}
}Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory część 1
Operatory arytmetyczneOperator moduloInkrementacja/dekrementacjaPostinkrementacja/postdekrementacjaSkrócone operatory arytmetyczneOperatory porównaniaPorównywanie ciągów znaków7Podstawowe wejście i wyjście
Metody System.outFormatowanie wyjściaKlasa ScannerPowtórka – do 120Powtórka – prawda czy fałsz10Metody (funkcje)
Deklarowanie metodParametry metodTypy zwracanePrzeciążanie metodPowtórzenie – funkcja SigmaPowtórzenie – funkcja walidującaMetody void13Operacje na ciągach znaków
Metody ciągów znaków — część 1Metody ciągów znaków — część 2Formatowanie ciągów znakówPorównywanie ciągów znaków5Operatory — część 2
Operatory logiczne — część 1Operatory logiczne — część 2Powtórka — podstawy logikiOperatory logiczne — część 3Operatory logiczne — część 43Zmienne — część 2
StałeKonwencje nazewnictwaPodsumowanie — inicjalizacja zmiennychKonwersja typów — część 1Konwersja typów — część 26Podejmowanie decyzji
Instrukcja ifIf - elseInstrukcja switchOperator trójargumentowyPowtórka: if - elseZagnieżdżone if - elsePoćwicz samodzielnie: Kompilator Java online