Program C# menggunakan LINQ untuk mengisih senarai pekerja dengan jabatan ABC berdasarkan gaji

WBOY
Lepaskan: 2023-09-02 10:21:02
ke hadapan
794 orang telah melayarinya

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

Dalam C#, LINQ (Language Integrated Query) ialah alat berkuasa yang boleh mengisih, menapis dan memanipulasi data dengan mudah. Dalam artikel ini, kami akan menunjukkan cara menggunakan LINQ untuk mengisih senarai pekerja berdasarkan gaji dan jabatan mereka.

Gunakan LINQ untuk mengisih senarai pekerja berdasarkan gaji dan jabatan

Untuk mengisih senarai pekerja berdasarkan gaji dan jabatan mereka menggunakan LINQ, anda boleh ikuti langkah di bawah −

1 Buat Kelas untuk Mewakili Pekerja

.
public class Employee {
   public string Name { get; set; }
   public int Salary { get; set; }
   public string Department { get; set; }
}
Salin selepas log masuk

2 Buat Senarai Pekerja

.
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" }
};
Salin selepas log masuk

3 Gunakan LINQ untuk Menyusun Senarai Pekerja Mengikut Gaji dan Jabatan

.
var sortedEmployees = employees
   .Where(e => e.Department == "ABC")
   .OrderByDescending(e => e.Salary)
   .ThenBy(e => e.Name);
Salin selepas log masuk

4 Lelaran melalui Senarai Isih dan Cetak Nama dan Gaji setiap Pekerja

.
foreach (var employee in sortedEmployees) {
   Console.WriteLine($"{employee.Name}: {employee.Salary}");
}
Salin selepas log masuk
Terjemahan bahasa Cina bagi

Penjelasan

ialah:

Explain

Langkah 1 - Kami mentakrifkan kelas bernama Pekerja untuk mewakili pekerja. Kelas ini mempunyai tiga atribut: Nama, Gaji dan Jabatan.

Langkah 2 - Kami membuat senarai pekerja dan memulakannya dengan beberapa sampel data.

Langkah 3 - Kami menggunakan LINQ untuk mengisih senarai pekerja mengikut gaji dan jabatan. Kami mula-mula menapis pekerja yang jabatannya adalah "ABC", dan kemudian mengisih senarai yang ditapis mengikut gaji dalam susunan menurun dan nama dalam susunan menaik. Hasilnya ialah senarai diisih pekerja yang memenuhi kriteria penapis.

Langkah 4 - Kami mengulangi senarai pekerja yang diisih dan menggunakan interpolasi rentetan untuk mencetak nama dan gaji setiap pekerja .

Contoh

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}");
      }
   }
}
Salin selepas log masuk

Output

John: 50000
Bob: 40000
Salin selepas log masuk

Kesimpulan

Menggunakan LINQ untuk mengisih senarai pekerja berdasarkan gaji dan jabatan ialah cara yang mudah dan cekap untuk memanipulasi data dalam C#. Dengan menggunakan LINQ, anda boleh menapis, mengisih dan memanipulasi sejumlah besar data dengan mudah menggunakan hanya beberapa baris kod. Kami berharap artikel ini membantu anda memahami cara mengisih senarai pekerja berdasarkan gaji dan jabatan menggunakan LINQ.

Atas ialah kandungan terperinci Program C# menggunakan LINQ untuk mengisih senarai pekerja dengan jabatan ABC berdasarkan gaji. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan