Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengisih senarai menggunakan fungsi List.Sort dalam C#

Bagaimana untuk mengisih senarai menggunakan fungsi List.Sort dalam C#

王林
王林asal
2023-11-17 10:58:351453semak imbas

Bagaimana untuk mengisih senarai menggunakan fungsi List.Sort dalam C#

Cara mengisih senarai menggunakan fungsi Senarai.Isih dalam C#

Dalam bahasa pengaturcaraan C#, kita selalunya perlu mengisih senarai beroperasi. Fungsi Isih kelas Senarai ialah alat berkuasa yang direka untuk tujuan ini. Artikel ini akan memperkenalkan cara menggunakan fungsi List.Isih dalam C# untuk mengisih senarai dan menyediakan contoh kod khusus untuk membantu pembaca memahami dan menggunakan fungsi ini dengan lebih baik.

Fungsi Senarai.Isih ialah fungsi ahli kelas Senarai, digunakan untuk mengisih elemen dalam senarai. Fungsi ini menerima parameter Perbandingan pilihan, yang digunakan untuk menentukan kaedah pengisihan Anda juga boleh menggunakan peraturan pengisihan lalai untuk mengisih elemen dalam senarai.

Berikut ialah contoh kod untuk mengisih senarai integer menggunakan List.Isih fungsi:

using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        List<int> numbers = new List<int>() { 5, 2, 8, 3, 1 };

        Console.WriteLine("排序前的列表:");
        foreach (var number in numbers)
        {
            Console.Write(number + " ");
        }
        Console.WriteLine();

        numbers.Sort();

        Console.WriteLine("排序后的列表:");
        foreach (var number in numbers)
        {
            Console.Write(number + " ");
        }
        Console.WriteLine();
    }
}

Dalam contoh di atas, kami mula-mula mencipta nombor senarai integer, yang mengandungi 5 integer tidak tertib. Kemudian gunakan fungsi List.Sort untuk mengisih senarai. Akhir sekali, kami mengeluarkan kandungan senarai sebelum mengisih dan selepas mengisih masing-masing.

Jalankan kod di atas, hasil output adalah seperti berikut:

排序前的列表:
5 2 8 3 1 
排序后的列表:
1 2 3 5 8

Seperti yang dapat dilihat daripada hasil output, elemen dalam senarai diisih mengikut tertib menaik.

Jika kita ingin mengisih elemen dalam senarai dalam tertib menurun, kita boleh menggunakan parameter Perbandingan dan lulus fungsi perbandingan tersuai. Berikut ialah kod sampel untuk melaksanakan pengisihan menurun melalui fungsi perbandingan tersuai:

using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        List<int> numbers = new List<int>() { 5, 2, 8, 3, 1 };

        Console.WriteLine("排序前的列表:");
        foreach (var number in numbers)
        {
            Console.Write(number + " ");
        }
        Console.WriteLine();

        numbers.Sort((x, y) => y.CompareTo(x));

        Console.WriteLine("排序后的列表:");
        foreach (var number in numbers)
        {
            Console.Write(number + " ");
        }
        Console.WriteLine();
    }
}

Dalam contoh di atas, kami menggunakan fungsi nombor.Isih() untuk mengisih senarai dan lambda dihantar dalam secara dalaman Ungkapan (x, y) => y.CompareTo(x) digunakan sebagai parameter Perbandingan. Ungkapan lambda ini menentukan kaedah perbandingan tersuai yang mengisih elemen dalam senarai dalam tertib menurun.

Jalankan kod di atas sekali lagi, hasil keluaran adalah seperti berikut:

排序前的列表:
5 2 8 3 1 
排序后的列表:
8 5 3 2 1

Seperti yang dapat dilihat daripada hasil keluaran, elemen dalam senarai diisih mengikut tertib menurun.

Ringkasan:
Artikel ini memperkenalkan cara menggunakan fungsi List.Isih dalam C# untuk mengisih senarai. Apabila kita perlu mengisih unsur dalam senarai, kita boleh menggunakan fungsi Senarai. Isih dan pilih peraturan pengisihan lalai atau fungsi perbandingan tersuai yang diperlukan untuk melaksanakan pengisihan menaik atau menurun secara fleksibel. Saya berharap agar pembaca dapat menjadi lebih mahir dalam menggunakan fungsi List.Sort untuk mengisih senarai melalui pengenalan dan kod contoh artikel ini.

Atas ialah kandungan terperinci Bagaimana untuk mengisih senarai menggunakan fungsi List.Sort dalam C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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