またNaNに対しても同様で、null
/Nothing
はNaNよりも小さいと扱われます。 つまり、小さい順位並べるとnull
< NaN < -∞ < MinValue < 0 の順になります。
ヌル許容の数値型におけるnull、NaN、-∞のソート順序
using System;
class Sample {
static void Main()
{
var arr = new double?[] {
0.0, 1.0, -1.0, null, double.MinValue, double.NegativeInfinity, double.NaN,
};
Array.Sort(arr);
foreach (var val in arr) {
Console.Write("{0}, ", val == null ? "(null)" : val.ToString());
}
Console.WriteLine();
}
}
実行結果
(null), NaN, -Infinity, -1.79769313486232E+308, -1, 0, 1,