Junior — Middle
Ist es erforderlich, alle möglichen Enum-Werte in einer Switch-Anweisung in Swift abzudecken?
sobes.tech KI
Antwort von AI
In Swift, wenn du den switch-Operator für einen Wert vom Enum-Typ ohne assoziierte Werte verwendest, verlangt der Compiler, dass alle möglichen Fälle des Enums abgedeckt werden, damit der switch vollständig ist. Das bedeutet, du musst entweder alle Enum-Optionen auflisten oder einen default-Case hinzufügen.
Wenn du nicht alle Optionen abdeckst und keinen default hinzufügst, wird der Code nicht kompiliert.
Beispiel:
enum Direction {
case north, south, east, west
}
func move(_ dir: Direction) {
switch dir {
case .north:
print("Gehen nach Norden")
case .south:
print("Gehen nach Süden")
case .east:
print("Gehen nach Osten")
case .west:
print("Gehen nach Westen")
}
}
Wenn du nicht alle Optionen auflisten möchtest, kannst du einen default hinzufügen:
switch dir {
case .north:
print("Gehen nach Norden")
default:
print("Andere Richtung")
}