文字(列)変数 a と b があったとして、単純な大小比較を行いたい場合。
VB.NETなら
a > b
の様に、単純に演算子(>,>=,=,<=,<)で大小比較が可能です。C#なら(VB.NET でも可能)
res = a.CompareTo(b);
の様にします。CompareTo の戻り値で大小判定が可能です。
res が -1 (0 より小さい値) なら a < b
res が 0 なら a = b
res が 1 (0 より大きい値) なら a > b
比較内容によっては戻り値が -32 とかになるので、比較条件は -1 や 1 ではなく 0 を基準に指定します。
OK:if (res < 0)
NG:if (res < -1)
開始・終了の範囲指定を逆指定した場合の入替処理などに使えます。
if (idFrom.CompareTo(idTo) > 0)
{
string w = idFrom;
idFrom = idTo;
idTo = w;
}
文字列で色々と凝った比較をしたい場合は string.Compare を使います。■環境
OS:Microsoft Windows XP Home Edition 日本語 ServicePack 3
IDE:Microsoft Visual Studio 2005 Standard Edition 日本語 Service Pack 1
Framework:Microsoft .NET Framework Version 2.0 SP2