📌  相关文章
📜  C# 程序使用 LINQ 根据薪水和部门为 ABC 对员工列表进行排序(1)

📅  最后修改于: 2023-12-03 14:39:47.474000             🧑  作者: Mango

C# 程序使用 LINQ 根据薪水和部门为 ABC 对员工列表进行排序
介绍

LINQ(Language Integrated Query)是 .NET Framework 的一部分,是 Microsoft .NET 应用程序开发中的一种编程模型,可以使用标准化的查询操作方式对各种数据源进行查询。

在本篇文章中,我们将使用 LINQ 对员工列表进行排序。排序的指标是薪水和部门名称。具体实现方式可参考以下代码片段。

代码
using System;
using System.Collections.Generic;
using System.Linq;

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

public class Program
{
    public static void Main()
    {
        List<Employee> employees = new List<Employee>
        {
            new Employee{Name="John", Salary=5000, Department="ABC"},
            new Employee{Name="Mary", Salary=6000, Department="DEF"},
            new Employee{Name="Peter", Salary=4000, Department="ABC"},
            new Employee{Name="Tom", Salary=4500, Department="ABC"},
            new Employee{Name="Jane", Salary=5500, Department="DEF"},
            new Employee{Name="Bob", Salary=3500, Department="DEF"},
        };

        var sortedEmployees = from e in employees
                              where e.Department == "ABC"
                              orderby e.Salary descending
                              select e;

        foreach (var e in sortedEmployees)
        {
            Console.WriteLine($"{e.Name}, {e.Salary}, {e.Department}");
        }
    }
}
代码说明

我们首先定义了一个 Employee 类,该类包括员工的姓名、薪水和所在部门,然后定义了一个 Program 类,在 Main 方法中初始化了一个员工列表。

接下来,我们使用 LINQ 对员工列表进行查询。查询方式为:从员工列表中选择所在部门为 "ABC" 的员工,根据薪水从高到低进行排序,最后将结果输出到控制台。

最后,我们使用 foreach 循环遍历结果列表,并将结果逐行输出到控制台。

输出结果为:

John, 5000, ABC
Tom, 4500, ABC
Peter, 4000, ABC