Vergleichsoperatoren (C#-Referenz)
Die Vergleichsoperatoren <
(kleiner als), >
(größer als), <=
(kleiner als oder gleich) und >=
(größer als oder gleich) – auch bekannt als relationale Operatoren – vergleichen ihre Operanden. Diese Operatoren werden alle von numerischen Ganzzahl- und Gleitkommatypen unterstützt.
Hinweis
Bei den Operatoren ==
, <
, >
, <=
und >=
ist das Ergebnis eines Vorgangs false
, wenn einer der Operanden keine Zahl ist (Double.NaN oder Single.NaN). Das bedeutet, dass der NaN
-Wert weder größer als noch kleiner als noch gleich einem anderen double
-Wert (oder float
-Wert) ist, einschließlich NaN
. Weitere Informationen und Beispiele finden Sie im Double.NaN- oder Single.NaN-Referenzartikel.
Der char-Typ unterstützt auch Vergleichsoperatoren. Im Fall von char
-Operanden werden die entsprechenden Zeichencodes verglichen.
Enumerationstypen unterstützen auch Vergleichsoperatoren. Für Operanden desselben enum-Typs werden die entsprechenden Werte des zugrunde liegenden integralen Typs verglichen.
Die Operatoren ==
und !=
überprüfen, ob die Operanden gleich sind oder nicht.
„Kleiner als“-Operator <
Der <
-Operator gibt true
zurück, wenn sein linker Operand kleiner ist als sein rechter Operand, andernfalls false
:
Console.WriteLine(7.0 < 5.1); // output: False
Console.WriteLine(5.1 < 5.1); // output: False
Console.WriteLine(0.0 < 5.1); // output: True
Console.WriteLine(double.NaN < 5.1); // output: False
Console.WriteLine(double.NaN >= 5.1); // output: False
Größer-als-Operator >
Der >
-Operator gibt true
zurück, wenn sein linker Operand größer ist als sein rechter Operand, andernfalls false
:
Console.WriteLine(7.0 > 5.1); // output: True
Console.WriteLine(5.1 > 5.1); // output: False
Console.WriteLine(0.0 > 5.1); // output: False
Console.WriteLine(double.NaN > 5.1); // output: False
Console.WriteLine(double.NaN <= 5.1); // output: False
Kleiner-oder-gleich-Operator <=
Der <=
-Operator gibt true
zurück, wenn sein linker Operand kleiner ist als der rechte Operand oder diesem entspricht, andernfalls false
:
Console.WriteLine(7.0 <= 5.1); // output: False
Console.WriteLine(5.1 <= 5.1); // output: True
Console.WriteLine(0.0 <= 5.1); // output: True
Console.WriteLine(double.NaN > 5.1); // output: False
Console.WriteLine(double.NaN <= 5.1); // output: False
Größer-oder-gleich-Operator >=
Der >=
-Operator gibt true
zurück, wenn sein linker Operand größer ist als der rechte Operand oder diesem entspricht, andernfalls false
:
Console.WriteLine(7.0 >= 5.1); // output: True
Console.WriteLine(5.1 >= 5.1); // output: True
Console.WriteLine(0.0 >= 5.1); // output: False
Console.WriteLine(double.NaN < 5.1); // output: False
Console.WriteLine(double.NaN >= 5.1); // output: False
Operatorüberladbarkeit
Ein benutzerdefinierter Typ kann die Operatoren <
, >
, <=
und >=
überladen.
Wenn ein Typ einen der <
- oder >
-Operatoren überlädt, muss er sowohl <
als auch >
überladen. Wenn ein Typ einen der <=
- oder >=
-Operatoren überlädt, muss er sowohl <=
als auch >=
überladen.
C#-Sprachspezifikation
Weitere Informationen finden Sie im Abschnitt Relationale und Typtestoperatoren in der C#-Sprachspezifikation.