Relační operátory (referenční dokumentace jazyka C#)
Porovnání (menší než) ( >
větší než)<=
(menší než nebo rovno) a >=
(větší než nebo rovno), označované také jako relační operátory, porovnávají jejich operandy.<
Tyto operátory jsou podporovány všemi celočíselnými a číselnými typy s plovoucí desetinou čárkou .
Poznámka:
==
Pro operátory , , <
>
, <=
a >=
operátory, pokud některý z operandů není číslo (Double.NaN nebo Single.NaN), výsledek operace je false
. To znamená, že NaN
hodnota není větší než, menší než, ani rovna žádné jiné double
(nebo float
) hodnotě, včetně NaN
. Další informace a příklady najdete v článku nebo Single.NaN v referenčním Double.NaN článku.
Typ znaku také podporuje relační operátory. V případě char
operandů se porovnávají odpovídající kódy znaků.
Typy výčtu také podporují relační operátory. Pro operandy stejného typu výčtu se porovnávají odpovídající hodnoty základního celočíselného typu.
Operátory ==
a !=
operátory zkontrolují, jestli jsou jejich operandy stejné nebo ne.
Operátor Menší než <
Operátor <
vrátí true
, pokud je jeho levý operand menší než jeho pravý operand, false
jinak:
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
Operátor Větší než >
Operátor >
vrátí true
, pokud je jeho levý operand větší než jeho pravý operand, false
jinak:
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
Operátor menší než nebo rovno <=
Operátor <=
vrátí true
, pokud je jeho levý operand menší nebo roven jeho pravému operandu, false
jinak:
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
Operátor větší než nebo rovno >=
Operátor >=
vrátí true
, pokud je jeho levý operand větší nebo roven jeho pravému operandu, false
jinak:
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
Přetížení operátoru
Uživatelem definovaný typ může přetížit <
, >
, <=
a >=
operátory.
Pokud typ přetěžuje jeden z operátorů <
nebo >
operátor, musí přetížit jak <
a >
. Pokud typ přetěžuje jeden z operátorů <=
nebo >=
operátor, musí přetížit jak <=
a >=
.
specifikace jazyka C#
Další informace najdete v části Relační a typové operátory specifikace jazyka C#.