C# ternärer (? :) Operator
C# ternärer (? :) Operator
In diesem Artikel erfahren wir mehr über den ternären Operator von C# und wie man ihn verwendet, um den Programmablauf zu steuern.
Ternäre Operatoren sind ein Ersatz für die if...else-Anweisung. Bevor Sie also in diesem Tutorial weitermachen, gehen Sie die if...else-Anweisung von C# durch (falls noch nicht geschehen).
Die Syntax des ternären Operators lautet:
Condition ? Expression1 : Expression2;
Der ternäre Operator funktioniert wie folgt:
- Wenn der Ausdruck von
Condition
angegeben wird isttrue
, das Ergebnis vonExpression1
wird vom ternären Operator zurückgegeben. - Wenn es
false
ist , das Ergebnis vonExpression2
zurückgegeben wird.
Beispielsweise können wir den folgenden Code ersetzen
if (number % 2 == 0) { isEven = true; } else { isEven = false; }
mit
isEven = (number % 2 == 0) ? true : false ;
Warum heißt es ternärer Operator?
Dieser Operator benötigt 3 Operanden , daher ternärer Operator genannt.
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:
True
Im obigen Programm 2
wird einer Variablen Nummer zugewiesen . Dann wird der ternäre Operator verwendet, um zu prüfen, ob number gerade ist oder nicht.
Da 2 gerade ist, ist der Ausdruck (number % 2 == 0
) gibt true
zurück . Wir können auch den ternären Operator 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 als
druckenConsole.WriteLine((number % 2 == 0) ? true : false);
Wann sollte man den ternären Operator verwenden?
Der ternäre Operator kann verwendet werden, um mehrere Codezeilen durch eine einzelne Zeile zu ersetzen. Wir sollten es jedoch nicht überbeanspruchen.
Beispielsweise können wir den folgenden if..else if-Code
ersetzenif (a > b) { result = "a is greater than b"; } else if (a < b) { result = "b is greater than a"; } else { result = "a is equal to b"; }
mit einer einzigen Codezeile
result = a > b ? "a is greater than b" : a < b ? "b is greater than a" : "a is equal to b";
Wie wir sehen können, kann die Verwendung des ternären Operators die Länge des Codes verringern, aber es erschwert uns, die Logik des Codes zu verstehen.
Daher ist es besser, nur ternäre Operatoren zu verwenden, um einfache if else-Anweisungen zu ersetzen.
C Sprache
- Überladen von Python-Operatoren
- Java-Instanz des Operators
- Wartung durch den Betreiber - Funktioniert das?
- Operatoren in C++ mit Beispiel:Was ist, Typen und Programme
- Überladen von C++-Operatoren mit Beispielen
- Reparaturen für Ihre Charmilles-Bedienertastatur
- C++-Überladung (Operator und Funktion)
- Java 9 - Diamantoperator der inneren Klasse
- MATLAB - Grundlegende Syntax
- C# – Überladen von Operatoren