使用LINQ對員工列表進行排序,基於薪資和部門為ABC的員工
在C#中,LINQ(語言整合查詢)是一個強大的工具,使您能夠輕鬆地排序、篩選和操作資料。在本文中,我們將演示如何使用LINQ根據員工的薪資和部門對員工列表進行排序。
使用LINQ根據薪資和部門對員工列表進行排序
要使用LINQ根據員工的薪資和部門對員工列表進行排序,您可以按照以下步驟操作:
1. 建立一個類來表示員工
public class Employee { public string Name { get; set; } public int Salary { get; set; } public string Department { get; set; } }
2. 建立一個員工列表
List<employee> employees = new List{ new Employee { Name = "John", Salary = 50000, Department = "ABC" }, new Employee { Name = "Mary", Salary = 60000, Department = "DEF" }, new Employee { Name = "Bob", Salary = 40000, Department = "ABC" }, new Employee { Name = "Alice", Salary = 70000, Department = "XYZ" } };
3. 使用LINQ根據薪資和部門對員工列表進行排序
var sortedEmployees = employees .Where(e => e.Department == "ABC") .OrderByDescending(e => e.Salary) .ThenBy(e => e.Name);
4. 遍歷排序後的列表並列印每個員工的姓名和薪資
foreach (var employee in sortedEmployees) { Console.WriteLine($"{employee.Name}: {employee.Salary}"); }
說明
步驟1 - 我們定義了一個名為Employee的類來表示員工。該類具有三個屬性:姓名、薪資和部門。
步驟2 - 我們建立了一個員工列表,並用一些示例資料對其進行初始化。
步驟3 - 我們使用LINQ根據員工的薪資和部門對員工列表進行排序。我們首先篩選列表,只包含部門為“ABC”的員工。然後,我們根據員工的薪資按降序對篩選後的列表進行排序,然後根據姓名按升序排序。結果是一個排序後的員工列表,滿足篩選條件。
步驟4 - 我們遍歷排序後的員工列表,並使用字串插值列印每個員工的姓名和薪資。
示例
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 = "ABC" }, new Employee { Name = "Alice", Salary = 70000, Department = "XYZ" } }; var sortedEmployees = employees .Where(e => e.Department == "ABC") .OrderByDescending(e => e.Salary) .ThenBy(e => e.Name); foreach (var employee in sortedEmployees) { Console.WriteLine($"{employee.Name}: {employee.Salary}"); } } }
輸出
John: 50000 Bob: 40000
結論
使用LINQ根據員工的薪資和部門對員工列表進行排序是在C#中操作資料的一種簡單有效的方法。透過使用LINQ,您可以輕鬆地篩選、排序和操作大量資料,只需幾行程式碼即可。希望本文能幫助您瞭解如何使用LINQ根據薪資和部門對員工列表進行排序。
廣告