Operatory porównania (odwołanie w C#)

Porównanie < (mniejsze niż), > (większe niż),(mniejsze niż lub <= równe)i >= (większe niż lub równe), znane również jako relacyjne, operatory porównują swoje operandy. Te operatory są obsługiwane przez wszystkie całkowitoliczbowe i zmiennoprzecinkowe typy liczbowe.

Uwaga

W przypadku operatorów , , , i , jeśli którykolwiek z == < > <= >= operandów Double.NaN Single.NaN nie jest liczbą ( lub ), false wynikiem operacji jest . Oznacza to, że wartość nie jest ani większa, mniejsza niż ani równa żadnej innej wartości (lub ), w NaN double tym float NaN . Aby uzyskać więcej informacji i przykładów, zobacz artykuł Double.NaN lub Single.NaN .

Typ char obsługuje również operatory porównania. W przypadku operandów są porównywane odpowiednie char kody znaków.

Typy wyliczenia obsługują również operatory porównania. W przypadku operandów tego samego typu wyli roku porównywane są odpowiednie wartości bazowego typu całkowitego.

Operatory == i != sprawdzają, czy ich operandy są równe, czy nie.

Operator mniejsze niż <

Operator zwraca wartość , jeśli jej operand po lewej stronie jest mniejszy niż < true prawy operand, false w przeciwnym razie:

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

Operator większe niż >

Operator zwraca wartość , jeśli jej operand po lewej stronie jest większy niż > true prawy operand, false w przeciwnym razie:

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

Operator mniejsze niż lub równe <=

Operator zwraca wartość , jeśli jej operand po lewej stronie jest mniejszy lub równy prawemu <= true operandowi, false w przeciwnym razie:

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

Operator większe niż lub równe >=

Operator zwraca wartość , jeśli jej operand po lewej stronie jest większy lub równy prawemu >= true operandowi, false w przeciwnym razie:

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

Przeciążenie operatora

Typ zdefiniowany przez użytkownika może przeciążyć < operatory , > , i <= >= .

Jeśli typ przeciąża jeden z < operatorów lub , musi > przeciążyć zarówno < operator , jak i > . Jeśli typ przeciąża jeden z <= operatorów lub , musi >= przeciążyć zarówno <= operator , jak i >= .

specyfikacja języka C#

Aby uzyskać więcej informacji, zobacz sekcję Relational and type-testing operators (Operatory relacyjne i operatory testowania typów) specyfikacji języka C#.

Zobacz też