相关疑难解决方法(0)

用NaN对双打数组进行排序

这更像是一个"你能解释这个"类型的问题,而不是其他任何问题.

我在工作中遇到了一个问题,我们在表中使用NaN值,但是当表被排序时,它以一种非常奇怪,奇怪的方式出现.我认为NaN正在捣乱,所以我写了一个测试应用程序来判断这是否属实.这就是我做的.

static void Main(string[] args)
{
    double[] someArray = { 4.0, 2.0, double.NaN, 1.0, 5.0, 3.0, double.NaN, 10.0, 9.0, 8.0 };

    foreach (double db in someArray)
    {
        Console.WriteLine(db);
    }

    Array.Sort(someArray);
    Console.WriteLine("\n\n");
    foreach (double db in someArray)
    {
        Console.WriteLine(db);
    }

    Console.ReadLine();
}
Run Code Online (Sandbox Code Playgroud)

结果如下:

之前:

4,2,NaN,1,5,3,NaN,10,9,8
Run Code Online (Sandbox Code Playgroud)

后:

1,4,NaN,2,3,5,8,9,10,NaN
Run Code Online (Sandbox Code Playgroud)

所以是的,NaN有些如何使排序的数组以奇怪的方式排序.

引用弗莱; "为什么这些东西?"

c# sorting nan .net-3.5

14
推荐指数
2
解决办法
3073
查看次数

标签 统计

.net-3.5 ×1

c# ×1

nan ×1

sorting ×1