Jämförelseoperatorer (C#-referens)
( <
mindre än), >
(större än), <=
(mindre än eller lika), och >=
(större än eller lika) jämförelse, även känd som relationsoperatorer, jämför sina operander. Dessa operatorer stöds av alla numeriska typer av integrerad och flyttal .
Kommentar
För operatorerna ==
, <
, >
, <=
och >=
om någon av operanderna inte är ett tal (Double.NaN eller Single.NaN) är false
resultatet av åtgärden . Det innebär att NaN
värdet varken är större än, mindre än eller lika med något annat double
(eller float
) värde, inklusive NaN
. Mer information och exempel finns i referensartikeln Double.NaN eller Single.NaN .
Typ av tecken stöder också jämförelseoperatorer. När det gäller char
operander jämförs motsvarande teckenkoder.
Uppräkningstyper stöder även jämförelseoperatorer. För operander av samma uppräkningstyp jämförs motsvarande värden för den underliggande integraltypen.
Operatorerna ==
och !=
kontrollerar om deras operander är lika med eller inte.
Mindre än operator <
Operatorn <
returnerar true
om dess vänstra operande är mindre än dess högra operande, false
annars:
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
Större än operatorn >
Operatorn >
returnerar true
om dess vänstra operande är större än dess högra operande, false
annars:
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
Mindre än eller lika med operator <=
Operatorn <=
returnerar true
om dess vänstra operande är mindre än eller lika med dess högra operande, false
annars:
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
Större än eller lika med operator >=
Operatorn >=
returnerar true
om dess vänstra operande är större än eller lika med dess högra operande, false
annars:
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
Överlagring av operator
En användardefinierad typ kan överbelasta operatorerna <
, >
, <=
och >=
.
Om en typ överbelastar en av operatorerna <
eller >
måste den överbelasta både <
och >
. Om en typ överbelastar en av operatorerna <=
eller >=
måste den överbelasta både <=
och >=
.
Språkspecifikation för C#
Mer information finns i avsnittet Relations- och typtestningsoperatorer i C#-språkspecifikationen.