Switch-Ausdruck
Teil des Abschnitts Logik & Ablauf der Java-Journey von Coddy — Lektion 36 von 59.
Der Switch-Ausdruck ist eine Funktion, die es ermöglicht, präzisere Switch-Anweisungen zu schreiben und Werte direkt zurückzugeben. Lassen Sie uns sehen, wie es funktioniert.
Erstellen Sie einen einfachen Switch-Ausdruck, der einen Wert zurückgibt:
int number = 1;
String message = switch(number) {
case 1 -> "One";
case 2 -> "Two";
default -> "Other";
};Nach der Ausführung des obigen Codes enthält die message-Variable:
"One"
Sie können auch mehrere Fälle zusammen behandeln:
int day = 2;
String type = switch(day) {
case 1, 2, 3, 4, 5 -> "Weekday";
case 6, 7 -> "Weekend";
default -> "Invalid day";
};Nach der Ausführung des obigen Codes enthält die type-Variable:
"Weekday"
Aufgabe
EinfachErstellen Sie eine Methode namens getDayType, die zwei Argumente nimmt:
- Eine Ganzzahl (
day), die einen Wochentag (1-7) darstellt - Einen Boolean (
abbreviated), der das Rückgabeformat bestimmt
Die Methode sollte einen Switch-Ausdruck verwenden, um den Tagestyp zurückzugeben:
- Für Tage 1-5 (Montag bis Freitag): geben Sie "WORKDAY" zurück, wenn nicht abgekürzt, oder "WKD", wenn abgekürzt
- Für Tage 6-7 (Samstag und Sonntag): geben Sie "WEEKEND" zurück, wenn nicht abgekürzt, oder "WKND", wenn abgekürzt
- Für jede andere Zahl: geben Sie "INVALID" zurück, wenn nicht abgekürzt, oder "INV", wenn abgekürzt
Spickzettel
Switch-Ausdrücke ermöglichen es Ihnen, prägnante switch-Anweisungen zu schreiben, die Werte direkt mit der Pfeilsyntax (->) zurückgeben:
int number = 1;
String message = switch(number) {
case 1 -> "One";
case 2 -> "Two";
default -> "Other";
};Sie können mehrere Fälle zusammen behandeln, indem Sie sie mit Kommas trennen:
int day = 2;
String type = switch(day) {
case 1, 2, 3, 4, 5 -> "Weekday";
case 6, 7 -> "Weekend";
default -> "Invalid day";
};Probier es selbst
import java.util.Scanner;
public class Main {
public static String getDayType(int day, boolean abbreviated) {
// Schreibe deinen Code hier
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int day = Integer.parseInt(scanner.nextLine());
boolean abbreviated = Boolean.parseBoolean(scanner.nextLine());
System.out.println(getDayType(day, abbreviated));
}
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Logik & Ablauf
1Mehrdimensionale Arrays
Grundlagen der 2D-ArraysZugriff auf 2D-Array-ElementeVerschachtelte Schleifen mit 2D-ArraysZusammenfassung - 2D-ArraysMatrixaddition & SubtraktionJagged Arrays3D-Arrays und darüber hinausGängige 2D-Array-MusterZusammenfassung - Alles über Arrays2HashMap Teil 1
Was ist eine HashMap?Eine HashMap deklarierenWerte abrufenPrüfen, ob ein Schlüssel existiertWörterbücher modifizierenZusammenfassung - HashMap3HashMap Teil 2
HashMap-MethodenMit keySet() iterierenMit entrySet() iterierenVerschachtelte HashMapZusammenfassung - Lager verwaltenZusammenfassung - HashMap-Operationen6Erweiterter Steuerungsfluss
Beschriftete AnweisungenSwitch-AusdruckMusterabgleichSchutzklauselnZusammenfassung - Steuerungsfluss9Projekt - Einzigartiger Wortzähler
Texteingabe und SpeicherungWortverarbeitung