我使用Array.Sort()
按升序对双打数组进行排序。然后在某些情况下我会Reverse()
更改顺序。但理想情况下,我想保留原始阵列。 C#是否对输出到新数组的数组有一个简单的本机排序,而不是就地对现有数组进行排序?
答案 0 :(得分:9)
你可以使用LINQ来做到这一点:
var result = source.OrderBy(x => x).ToArray();
或降序:
var result = source.OrderByDescending(x => x).ToArray();
或者您可以先创建新数组,然后再对其进行排序:
var newArray = (double[])source.Clone();
newArray.Sort();
我希望后者更快,但你应该测量它以确定。