C# 程序使用 LINQ 根据工资降序对员工列表进行排序,其部门是 XYZ

在 C# 中,LINQ(语言集成查询)是一个功能强大的工具,可让您轻松排序、筛选和操作数据。在本文中,我们将演示如何使用 LINQ 根据员工的薪水和工作部门对员工列表进行降序排序。

使用 LINQ 根据工资降序对员工列表进行排序,其部门是 XYZ -

要使用 LINQ 根据工资降序和部门对员工列表进行排序,您可以按照以下步骤操作 -

  • 创建一个类来代表员工 -

public class Employee {
   public string Name { get; set; }
   public int Salary { get; set; }
   public string Department { get; set; }
}
登录后复制
  • 创建员工列表 -

List 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 = "XYZ" },
   new Employee { Name = "Alice", Salary = 70000, Department = "XYZ" }
};
登录后复制
  • 使用 LINQ 按薪水和部门降序对员工列表进行排序 -

var sortedEmployees = employees
   .Where(e => e.Department == "XYZ")
   .OrderByDescending(e => e.Salary)
   .ThenBy(e => e.Name);
登录后复制
  • 遍历排序列表并打印出每个员工的姓名和工资 -

foreach (var employee in sortedEmployees) {
   Console.WriteLine($"{employee.Name}: {employee.Salary}");
}
登录后复制

说明

在步骤 1 中,我们定义一个名为 Employee 的类来表示员工。该类具有三个属性:Name、Salary 和 Department。

在步骤 2 中,我们创建一个员工列表并使用一些示例数据对其进行初始化。

在步骤 3 中,我们使用 LINQ 根据员工的工资和部门对员工列表进行降序排序。我们首先过滤列表以仅包含部门为“XYZ”的员工。然后,我们根据员工的工资对过滤后的列表进行降序排序,然后根据他们的姓名进行升序排序。结果是符合过滤条件的员工的排序列表。

在步骤 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 = "XYZ" },
         new Employee { Name = "Alice", Salary = 70000, Department = "XYZ" }
      };
   
      var sortedEmployees = employees
         .Where(e => e.Department == "XYZ")
         .OrderByDescending(e => e.Salary)
         .ThenBy(e => e.Name);
   
      foreach (var employee in sortedEmployees) {
         Console.WriteLine($"{employee.Name}: {employee.Salary}");
      }
   }
}
登录后复制

输出

Alice: 70000
Bob: 40000
登录后复制

结论

使用 LINQ 根据员工的薪水和部门对员工列表进行降序排序是在 C# 中操作数据的一种简单而有效的方法。通过使用 LINQ,您只需几行代码即可轻松过滤、排序和操作大量数据。我们希望本文能够帮助您了解如何使用 LINQ 根据薪资和部门对员工列表进行降序排序。

以上就是C# 程序使用 LINQ 根据工资降序对员工列表进行排序,其部门是 XYZ的详细内容,转载自php中文网

点赞(463) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部