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.

Siehe auch