Jadual Kandungan
2. Corak yang berterusan - sepadan dengan nilai tertentu
3. Tukar ungkapan dengan corak
4. Corak Rekursif - Padankan Struktur Bersarang
Rumah pembangunan bahagian belakang Tutorial C#.Net Bagaimana cara menggunakan corak padanan di C#?

Bagaimana cara menggunakan corak padanan di C#?

Sep 20, 2025 am 04:32 AM

Pencocokan corak dalam C# adalah ciri yang digunakan untuk memeriksa objek terhadap corak dan mengekstrak maklumat dengan ringkas. 1. Corak jenis membenarkan pemeriksaan dan pemutus dalam satu langkah, seperti yang ditunjukkan dengan jika (nilai adalah string str). 2. Corak malar membandingkan nilai -nilai terhadap pemalar secara langsung, seperti memeriksa jika (input adalah null). 3. Suis Ekspresi dengan corak memudahkan logik, ditunjukkan oleh suis bentuk yang mengembalikan rentetan yang berbeza berdasarkan jenis bentuk. 4. Corak rekursif sepadan dengan struktur bersarang, seperti orang yang memeriksa adalah {name: "alice", alamat: {city: "wonderland"}}. Secara keseluruhan, pencocokan corak meningkatkan kebolehbacaan kod dan ekspresi apabila digunakan dengan sewajarnya.

Bagaimana cara menggunakan corak padanan di C#?

Pencocokan corak dalam C# adalah ciri yang kuat yang membolehkan anda menyemak objek terhadap corak dan mengekstrak maklumat daripadanya dengan cara yang ringkas dan mudah dibaca. Ia amat berguna apabila bekerja dengan pelbagai jenis, keadaan, atau struktur.

Bagaimana cara menggunakan corak padanan di C#?

Berikut adalah beberapa cara praktikal yang anda boleh menggunakan corak yang sesuai dalam kod C# anda:


1. Jenis Corak - Semak dan Cast dalam Satu Langkah

Salah satu penggunaan corak yang paling biasa adalah untuk memeriksa jenis objek dan membuangnya pada masa yang sama.

Bagaimana cara menggunakan corak padanan di C#?
 jika (nilai adalah string str)
{
    Console.WriteLine ($ "Ia adalah rentetan: {str.toupper ()}");
}

Ini menggantikan kod lama seperti:

 jika (nilai adalah rentetan)
{
    string str = (string) nilai;
    // ...
}

Ini lebih bersih dan mengelakkan mengulangi nama pembolehubah atau melakukan pelakon yang berasingan.

Bagaimana cara menggunakan corak padanan di C#?

2. Corak yang berterusan - sepadan dengan nilai tertentu

Anda boleh menggunakan padanan corak untuk membandingkan nilai -nilai terhadap pemalar secara langsung dalam keadaan.

 jika (input adalah batal)
{
    Console.WriteLine ("Input adalah NULL");
}

Atau dengan nilai angka:

 Tukar (nombor)
{
    Kes 0:
        Console.WriteLine ("Zero");
        rehat;
    kes var n ketika n> 0:
        Console.WriteLine ("positif");
        rehat;
}

Ini boleh membuat logik bersyarat lebih mudah dibaca, terutamanya apabila digabungkan dengan ekspresi switch .


3. Tukar ungkapan dengan corak

C# 8 Memperkenalkan ekspresi suis, yang berfungsi dengan baik dengan corak yang sesuai untuk memudahkan logik.

 Hasil rentetan = suis bentuk
{
    Rectangle r => $ "Rectangle: {r.width} x {r.height}",
    Circle C => $ "Circle: Radius {C.Radius}",
    null => "tiada bentuk",
    _ => "Bentuk tidak diketahui"
};

Ini menggantikan pernyataan switch yang lebih panjang dan menjadikan kod lebih ekspresif. _ Adalah corak buang yang sepadan dengan apa -apa yang tidak dilindungi di atas.


4. Corak Rekursif - Padankan Struktur Bersarang

Dalam C# 9 dan kemudian, anda boleh menggunakan corak rekursif untuk memadankan sifat bersarang. Contohnya:

 jika (orang adalah {name: "alice", alamat: {city: "wonderland"}})
{
    Console.WriteLine ("Ditemui Alice dari Wonderland");
}

Ini berguna apabila anda ingin menyemak data yang sangat bersarang tanpa menulis pelbagai syarat if keadaan.


Beberapa perkara yang perlu diingat:

  • Pencocokan corak berfungsi dengan baik dengan is , switch , dan dalam beberapa kes dengan ekspresi switch .
  • Anda boleh menggabungkan corak dengan when klausa untuk keadaan yang lebih kompleks.
  • Elakkan terlalu banyak dalam logik yang sangat bersarang di mana kebolehbacaan mungkin menderita.

Pencocokan corak dalam C# membantu anda menulis kod bersih, lebih ekspresif sebaik sahaja anda terbiasa dengan sintaks. Ia tidak terlalu kompleks, tetapi ia mengambil sedikit amalan untuk mengetahui kapan dan cara menggunakannya dengan berkesan.

Atas ialah kandungan terperinci Bagaimana cara menggunakan corak padanan di C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Stock Market GPT

Stock Market GPT

Penyelidikan pelaburan dikuasakan AI untuk keputusan yang lebih bijak

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Bagaimana cara membaca tetapan aplikasi dari appsettings.json di c#? Bagaimana cara membaca tetapan aplikasi dari appsettings.json di c#? Sep 15, 2025 am 02:16 AM

Jawapannya ialah membaca AppSettings.json menggunakan microsoft.extensions.configuration. 1. Buat appsettings.json dan tetapkan sifat salinan; 2. Pasang pakej microsoft.extensions.configuration.json; 3. Muatkan konfigurasi dengan konfigurasiBuilder; 4. Baca nilai melalui pengindeks atau getConnectionString; 5. Adalah disyorkan untuk menggunakan kelas konfigurasi yang kuat mengikat atau mengikat.

Bagaimana cara menggunakan kelas httpclient dengan betul di c#? Bagaimana cara menggunakan kelas httpclient dengan betul di c#? Sep 15, 2025 am 01:23 AM

HttpClient harus digunakan semula untuk masa yang lama dan bukannya dicipta dengan kerap. Adalah disyorkan untuk menggunakan pengurusan suntikan IhttpClientFactory untuk mengelakkan keletihan soket; Sekiranya tidak ada DI, gunakan contoh statik untuk memastikan kitaran hayat yang munasabah.

C# String vs StringBuilder Prestasi dan Penggunaan. C# String vs StringBuilder Prestasi dan Penggunaan. Sep 16, 2025 am 05:24 AM

Usestringforminimal, statictextoperations; useStringbuilderfrequentmodificationsationloopsorlarge-scaleconcatenationstoimproveperformanceandreducemoryAllocation.

Dari Monolith ke Microservices: Panduan Migrasi untuk Aplikasi .NET Dari Monolith ke Microservices: Panduan Migrasi untuk Aplikasi .NET Sep 19, 2025 am 05:21 AM

Memindahkan monomer NET ke microservices harus mengelakkan penulisan semula satu kali. 1. Pertama, jelaskan penghijrahan mesin mudah alih dan elakkan perangkap biasa untuk memastikan pasukan mempunyai keupayaan dan keupayaan pemerhatian; 2. Gunakan mod Strangler untuk secara beransur -ansur menggantikan, laluan fungsi baru ke perkhidmatan baru melalui gerbang API; 3. Gunakan reka bentuk yang didorong oleh domain untuk mengenal pasti konteks yang dibatasi, perkhidmatan berpecah mengikut sempadan perniagaan dan mengasingkan pangkalan data; 4. Pilih kaedah komunikasi yang sesuai, gunakan HTTP/REST untuk permintaan pengguna, dan gunakan mesej asynchronous seperti AzureServiceBus untuk acara; 5. Memastikan konsistensi data lintas perkhidmatan melalui konsistensi akhir peristiwa, mod saga dan mod kotak keluar; 6. Integrasi Awal Serilog, Opentelemetry dan Alat Lain untuk Membina Tarikh

Apakah pengubah akses yang berbeza di C#? Apakah pengubah akses yang berbeza di C#? Sep 21, 2025 am 01:43 AM

Ahli awam boleh diakses oleh mana -mana kod; 2. Private hanya boleh diakses dalam kelas; 3. Protected membolehkan akses kepada kelas dan kelas yang diperolehi; 4. Internal adalah terhad kepada akses dalam perhimpunan yang sama; 5. ProtectedInternal adalah kesatuan yang dilindungi dan dalaman, digunakan untuk akses kepada kelas yang diperolehi atau perhimpunan yang sama.

Apakah perbezaan antara pertama () dan firstOrDefault () di C# linq? Apakah perbezaan antara pertama () dan firstOrDefault () di C# linq? Sep 16, 2025 am 12:33 AM

Pertama () wrowsanExceptionifnoelementisfound, whildirsTordefault () returnsadefaultValue; useFirst () whenthesequenceisExpectedTobenon-empty, andFirStordefault () toHandleEmptySeSeMeLyGnely.

Bagaimana untuk membuat dan menggunakan pembatalan di C#? Bagaimana untuk membuat dan menggunakan pembatalan di C#? Sep 21, 2025 am 01:49 AM

Buat CancellationTokenSource untuk mendapatkan pembatalanToken, yang digunakan untuk memberitahu benang atau komponen lain untuk membatalkan operasi. 2. Lulus token ke kaedah asynchronous yang menyokong pembatalan (seperti Task.Run). Tugas ini secara berkala dapat memeriksa permintaan pembatalan untuk mencapai penamatan yang anggun.

Bagaimana cara menggunakan corak padanan di C#? Bagaimana cara menggunakan corak padanan di C#? Sep 20, 2025 am 04:32 AM

Corakmatchinginc#isafeatureusedtoCheckObjectSagainsTPatternSandExtractInformationCisely.1.TypepatternSallowCheckingAncastinSteNestep, AsshownWithif (valueSstringstr)

See all articles