In diesem Artikel lernen Sie, den bedingten oder ternären Operator zu verwenden, um den Steuerungsfluss des Programms zu ändern.
Der ternäre bedingte Operator "? :"
ist eine Abkürzung für die if-else-Anweisung.
Die Syntax für den ternären bedingten Operator lautet:
Bedingung ? Wert1: Wert2
Wie funktioniert der ternäre bedingte Operator?
So funktioniert das
- Wenn die Bedingung erfüllt ist, wird value1 zurückgegeben.
- Wenn die Bedingung falsch ist, wird value2 zurückgegeben.
Der obige äquivalente Code mit if - else lautet:
wenn Bedingung (Wert1) sonst (Wert2)
Warum ternären bedingten Operator verwenden?
Sie fragen sich vielleicht, warum wir den bedingten Operator verwenden sollten, wenn er dieselbe Aufgabe wie die if-else-Anweisung ausführt. Der Hauptzweck der Verwendung besteht darin, den Code kürzer und lesbarer zu machen.
Für einfache Bedingungen können Sie es in einer einzelnen Zeile mit weniger Code als if-else auswerten.
Beispiel 1: Einfaches Beispiel mit einem ternären bedingten Operator
print(true && false ? "The condition is true": "The condition is false")
Der obige äquivalente Code mit if - else lautet:
if true && false ( print("The condition is true") ) else ( print("The condition is false") )
Wenn Sie das obige Programm ausführen, lautet die Ausgabe wie folgt:
Die Bedingung ist falsch
Im obigen Programm wird der Ausdruck als true && false
ausgewertet false
, daher gibt die Anweisung die Zeichenfolge zurück. Die Bedingung ist falsch und die print-Anweisung gibt die Zeichenfolge in der Konsole aus.
Wenn Sie den Ausdruck ändern, während true || false
die Anweisung true
die Zeichenfolge auswertet und zurückgibt. Die Bedingung ist wahr, und die print-Anweisung gibt die Zeichenfolge in der Konsole aus.
Dinge, an die man sich erinnern sollte
Der ternäre bedingte Operator kann auch als Alternative zur if-else-if
Anweisung verwendet werden.
Mit dem ternären bedingten Operator können Sie mehrere if-else-if
Codezeilen durch eine einzige Zeile ersetzen .
Es kann jedoch keine gute Idee sein.
Beispiel 2: Verschachtelt, wenn sonst ein ternärer bedingter Operator verwendet wird
if true && false ( print("Result is (true && false)") ) else if true || false ( print("Result is (true || false)") ) else if false || false ( print("Result is (false || false)") ) else ( print("Default else statement") )
Der obige äquivalente Code unter Verwendung des ternären bedingten Operators lautet:
print(true && false ? "Result is (true && false)" : true || false ? "Result is (true || false)" : false || false ? "Result is (false || false)" : "The condition is unknown")
Wenn Sie die oben genannten Programme ausführen, sind beide Ausgaben:
Ergebnis ist wahr
In den obigen Programmen werden die Anweisungen von if-else-if
durch die Verwendung eines bedingten Operators durch eine einzelne Zeile ersetzt. Der im ternären bedingten Operator verwendete Ausdruck ist wirklich schwer zu verstehen.
Halten Sie sich also einfach an die Verwendung des ternären bedingten Operators als Alternative zur if-else
Anweisung.