Quá tải của phương thức Sort () trong lớp Danh sách yêu cầu đại biểu So sánh được bỏ qua dưới dạng một đối số.
public void Sort (So sánh
CompareTo trả về một số nguyên cho biết giá trị của đối tượng này nhỏ hơn, bằng hoặc lớn hơn giá trị của đối tượng được chỉ định hoặc đối tượng Int16 khác.
Phương thức Int16.CompareTo () trong C # được sử dụng để so sánh trường hợp này với một đối tượng được chỉ định hoặc một trường hợp Int16 khác
Ví dụ
Chương trình lớpclass Program{ public static void Main(){ Employee Employee1 = new Employee(){ ID = 101, Name = "Mark", Salary = 4000 }; Employee Employee2 = new Employee(){ ID = 103, Name = "John", Salary = 7000 }; Employee Employee3 = new Employee(){ ID = 102, Name = "Ken", Salary = 5500 }; List<Employee> listEmployees = new List<Employee>(); listEmployees.Add(Employee1); listEmployees.Add(Employee2); listEmployees.Add(Employee3); Console.WriteLine("Employees before sorting"); foreach (Employee Employee in listEmployees){ Console.WriteLine(Employee.ID); } listEmployees.Sort((x, y) => x.ID.CompareTo(y.ID)); Console.WriteLine("Employees after sorting by ID"); foreach (Employee Employee in listEmployees){ Console.WriteLine(Employee.ID); } listEmployees.Reverse(); Console.WriteLine("Employees in descending order of ID"); foreach (Employee Employee in listEmployees){ Console.WriteLine(Employee.ID); } } // Approach 1 - Step 1 // Method that contains the logic to compare Employees private static int CompareEmployees(Employee c1, Employee c2){ return c1.ID.CompareTo(c2.ID); } } public class Employee{ public int ID { get; set; } public string Name { get; set; } public int Salary { get; set; } }
Đầu ra
Employees before sorting 101 103 102 Employees after sorting by ID 101 102 103 Employees in descending order of ID 103 102 101