Home  >  Article  >  Backend Development  >  C# program to sort a list of employees based on salary using LINQ

C# program to sort a list of employees based on salary using LINQ

王林
王林forward
2023-08-27 13:29:121228browse

使用 LINQ 根据薪资对员工列表进行排序的 C# 程序

In many software development projects, it is sometimes necessary to sort a list of objects based on one or more properties of the object. In C#, the LINQ (Language Integrated Query) library provides a powerful and easy-to-use way to sort a list of objects based on one or more criteria. In this tutorial, we will demonstrate how to sort a list of Employee objects based on salary using LINQ.

step

  • Create an Employee class that contains name, salary, and department attributes.

  • Create a list of Employee objects and fill it with some data.

  • Use LINQ to sort a list of Employee objects based on salary.

  • Display a sorted list of Employee objects.

Example

The following is the C# code for a sample program that uses LINQ to sort a list of employees based on their salary -

using System;
using System.Collections.Generic;
using System.Linq;

public class Employee {
   public string Name { get; set; }
   public int Salary { get; set; }
   public string Department { get; set; }
}

class Program {
   static void Main(string[] args) {
      List<Employee> employees = new List<Employee> {
         new Employee { Name = "John", Salary = 50000, Department = "ABC" },
         new Employee { Name = "Mary", Salary = 60000, Department = "DEF" },
         new Employee { Name = "Bob", Salary = 40000, Department = "XYZ" },
         new Employee { Name = "Alice", Salary = 70000, Department = "XYZ" }
      };
   
      var sortedEmployees = employees
         .OrderByDescending(e => e.Salary);
   
      foreach (var employee in sortedEmployees) {
         Console.WriteLine($"{employee.Name}: {employee.Salary}");
      }
   }
}

Output

Alice: 70000
Mary: 60000
John: 50000
Bob: 40000

illustrate

In this program, we first create an Employee class which contains name, salary and department attributes. We then create a list of Employee objects and populate it with some sample data.

To sort the list of employees by salary, we use LINQ’s OrderByDescending method. This method takes a lambda expression that specifies the property to sort by (in this case, the Salary property) and whether to sort in ascending or descending order (in this case, descending order).

Finally, we loop through the sorted list of employees and display their names and salaries using Console.WriteLine().

in conclusion

In this tutorial, we showed how to use LINQ to sort a list of Employee objects based on salary. Sorting a list of objects is a common task in software development, and LINQ provides a simple and elegant way to accomplish this task. By using LINQ, you can easily sort lists based on multiple properties and conditions, making it a powerful tool for data manipulation.

The above is the detailed content of C# program to sort a list of employees based on salary using LINQ. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:tutorialspoint.com. If there is any infringement, please contact admin@php.cn delete