In diesem Artikel erfahren Sie mehr über den ternären C # -Operator und dessen Verwendung zur Steuerung des Programmflusses.
Ternäre Operatoren sind ein Ersatz für die if… else-Anweisung. Bevor Sie in diesem Lernprogramm fortfahren, gehen Sie die Anweisung C # if… else durch (falls nicht).
Die Syntax des ternären Operators lautet:
Bedingung ? Ausdruck1: Ausdruck2;
Der ternäre Operator arbeitet wie folgt:
- Wenn der durch angegebene Ausdruck
Condition
isttrue
, wird das Ergebnis vonExpression1
vom ternären Operator zurückgegeben. - Wenn dies der Fall ist
false
, wird das Ergebnis vonExpression2
zurückgegeben.
Zum Beispiel können wir den folgenden Code ersetzen
if (number% 2 == 0) (isEven = true;) else (isEven = false;)
mit
isEven = (Zahl% 2 == 0)? wahr falsch ;
Warum heißt es ternärer Operator?
Dieser Operator benötigt 3 Operanden und wird daher als ternärer Operator bezeichnet.
Beispiel 1: Ternärer C # -Operator
using System; namespace Conditional ( class Ternary ( public static void Main(string() args) ( int number = 2; bool isEven; isEven = (number % 2 == 0) ? true : false ; Console.WriteLine(isEven); ) ) )
Wenn wir das Programm ausführen, lautet die Ausgabe:
Wahr
Wird im obigen Programm 2
einer Variablennummer zugeordnet. Dann wird der ternäre Operator verwendet, um zu überprüfen, ob die Zahl gerade ist oder nicht.
Da 2 gerade ist, gibt der Ausdruck ( number % 2 == 0
) zurück true
. Wir können auch ternäre Operatoren verwenden, um Zahlen, Zeichenfolgen und Zeichen zurückzugeben.
Anstatt den Rückgabewert in der Variablen isEven zu speichern, können wir den vom ternären Operator zurückgegebenen Wert direkt drucken als:
Console.WriteLine ((Zahl% 2 == 0)? True: false);
Wann wird der ternäre Operator verwendet?
Der ternäre Operator kann verwendet werden, um mehrere Codezeilen durch eine einzelne Zeile zu ersetzen. Wir sollten es jedoch nicht überbeanspruchen.
Zum Beispiel können wir Folgendes ersetzen, wenn … sonst wenn Code
wenn (a> b) (Ergebnis = "a ist größer als b";) sonst wenn (a <b) (Ergebnis = "b ist größer als a";) sonst (Ergebnis = "a ist gleich b";)
mit einer einzigen Codezeile
Ergebnis = a> b? "a ist größer als b": a <b? "b ist größer als a": "a ist gleich b";
Wie wir sehen können, kann die Verwendung eines ternären Operators die Länge des Codes verringern, aber es macht uns schwierig, die Logik des Codes zu verstehen.
Daher ist es besser, nur den ternären Operator zu verwenden, um einfache if else-Anweisungen zu ersetzen.