Phương thức Array.Sort() sắp xếp các phần tử trong toàn bộ mảng một chiều sử dụng triển khai IComparable của từng phần tử.
Ví dụ
using System;
namespace Demo
{
class Program
{
static void Main(string[] args)
{
int[] list = { 22, 12, 65, 9 };
Console.Write("Mảng gốc: ");
foreach (int i in list)
Console.Write(i + " ");
Console.WriteLine();
// Sắp xếp mảng
Array.Sort(list);
Console.Write("Mảng đã sắp xếp: ");
foreach (int i in list)
Console.Write(i + " ");
Console.WriteLine();
Console.ReadKey();
}
}
}
Kết quả
Mảng gốc: 22 12 65 9 Mảng đã sắp xếp: 9 12 22 65
Các overload phổ biến
Array.Sort(list); Array.Reverse(list); // Hoặc dùng comparer // Cách khác: IComparer Array.Sort(list, Comparer.Create((a, b) => b.CompareTo(a)));
Yêu cầu
- Phần tử phải triển khai
IComparablehoặcIComparable<T> - Kiểu cơ bản (int, string, double...) đã triển khai sẵn
- Class tự định nghĩa cần implement
IComparable<T>