c#中,对于一个整数数组,如何排序(从大到小)
时间: 2024-09-25 16:08:48 浏览: 63
在 C# 中,对整数数组进行从大到小排序可以使用 `Array.Sort()` 函数配合自定义的 `IComparer<T>` 或者直接使用 LINQ 的 `OrderByDescending()` 方法。以下是两种方法:
**方法一:使用 IComparer<T>**
```csharp
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
int[] numbers = { 4, 7, 1, 9, 2 };
// 自定义比较器
Comparer<int> descComparer = Comparer<int>.Create((x, y) => y.CompareTo(x));
// 对数组进行降序排序
Array.Sort(numbers, descComparer);
Console.WriteLine("Sorted array in descending order:");
foreach (int num in numbers)
{
Console.Write(num + " ");
}
}
}
```
**方法二:使用 LINQ 的 OrderByDescending()**
```csharp
using System.Linq;
...
// 使用 LINQ 对数组进行排序
numbers = numbers.OrderByDescending(n => n).ToArray();
Console.WriteLine("Sorted array in descending order:");
foreach (int num in numbers)
{
Console.Write(num + " ");
}
```
在这两个例子中,都会得到一个从大到小排序的整数数组。
阅读全文