<
(より小さい)、>
(より大きい)、<=
(以下)、および>=
(以上) の比較 (関係演算子とも呼ばれます) は、オペランドを比較します。 これらの演算子は、すべての 整数 型と 浮動小数点 型でサポートされています。
注
==
、<
、>
、<=
、および>=
演算子の場合、オペランドのいずれかが数値 (Double.NaNまたはSingle.NaN) でない場合、演算の結果はfalse
。 つまり、NaN
値は、NaN
を含む他のdouble
(またはfloat
) の値より大きくも、小さい値でも等しくないということです。 詳細と例については、 Double.NaN または Single.NaN リファレンス記事を参照してください。
char 型は比較演算子もサポートしています。
char
オペランドの場合、対応する文字コードが比較されます。
列挙型では、比較演算子もサポートされています。 同じ 列挙型 のオペランドの場合、基になる整数型の対応する値が比較されます。
==
演算子と!=
演算子は、オペランドが等しいかどうかを確認します。
演算子より小さい <
<
演算子は、左側のオペランドが右側のオペランドより小さい場合はtrue
を返し、それ以外の場合は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
より大きい演算子 >
>
演算子は、左側のオペランドが右側のオペランドより大きい場合はtrue
を返し、それ以外の場合は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
以下の演算子 <=
<=
演算子は、左側のオペランドが右側のオペランド以下の場合はtrue
を返し、それ以外の場合は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
以上の演算子 >=
>=
演算子は、左側のオペランドが右側のオペランド以上の場合はtrue
を返し、それ以外の場合は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
演算子のオーバーロード可能性
ユーザー定義型は、、<
、>
、および <=
演算子を>=
できます。
型が <
演算子または >
演算子のいずれかをオーバーロードする場合は、 <
と >
の両方をオーバーロードする必要があります。 型が <=
演算子または >=
演算子のいずれかをオーバーロードする場合は、 <=
と >=
の両方をオーバーロードする必要があります。
C# 言語仕様
詳細については、C# 言語仕様のリレーショナル演算子と型テスト演算子に関するセクションを参照してください。
こちらも参照ください
.NET