Rumah pembangunan bahagian belakang Tutorial C#.Net Cara menggunakan koleksi dan generik untuk meningkatkan kecekapan kod dalam pembangunan C#

Cara menggunakan koleksi dan generik untuk meningkatkan kecekapan kod dalam pembangunan C#

Oct 09, 2023 pm 09:37 PM
Generik berkumpul kecekapan

Cara menggunakan koleksi dan generik untuk meningkatkan kecekapan kod dalam pembangunan C#

Cara menggunakan koleksi dan generik untuk meningkatkan kecekapan kod dalam pembangunan C#

Dalam pembangunan C#, koleksi dan generik ialah alat penting untuk meningkatkan kecekapan kod. Koleksi menyediakan set struktur dan algoritma data yang biasa, manakala generik membenarkan kami memanipulasi data dengan cara yang lebih umum dan selamat jenis semasa menulis kod. Artikel ini akan menyelidiki cara menggunakan koleksi dan generik untuk meningkatkan kecekapan kod, dan memberikan contoh kod khusus untuk rujukan pembaca.

1. Rangka Kerja Pengumpulan

Dalam C#, rangka kerja pengumpulan menyediakan banyak kelas yang melaksanakan pelbagai struktur data, seperti Senarai, Kamus, Set, dll. Kita boleh memilih kelas pengumpulan yang sesuai untuk menyimpan dan mengendalikan data mengikut keperluan sebenar.

  1. Senarai (Senarai)

Senarai ialah koleksi tertib elemen yang membolehkan kami memasukkan, memadam atau mengakses elemen di mana-mana kedudukan. Berbanding dengan tatasusunan, panjang senarai boleh dilaraskan secara dinamik dan lebih fleksibel. Berikut ialah contoh kod menggunakan senarai:

List<string> fruits = new List<string>();
fruits.Add("apple");
fruits.Add("banana");
fruits.Add("orange");

foreach (string fruit in fruits)
{
    Console.WriteLine(fruit);
}
Salin selepas log masuk
  1. Kamus (Kamus)

Kamus ialah koleksi pasangan nilai kunci dan kami boleh mengakses nilai yang sepadan dengan pantas melalui kekunci. Tidak seperti senarai, kamus tidak disusun tetapi mempunyai prestasi tinggi apabila melihat dan memasukkan. Berikut ialah contoh kod menggunakan kamus:

Dictionary<int, string> students = new Dictionary<int, string>();
students.Add(1, "Tom");
students.Add(2, "Jerry");
students.Add(3, "Alice");

foreach (KeyValuePair<int, string> student in students)
{
    Console.WriteLine("ID: " + student.Key + ", Name: " + student.Value);
}
Salin selepas log masuk
  1. Set

Set ialah koleksi tidak tertib tanpa unsur pendua. Kita boleh menggunakan set untuk menentukan dengan cepat sama ada unsur wujud, dan menyokong operasi antara set, seperti persilangan, kesatuan, perbezaan, dsb. Berikut ialah contoh kod menggunakan koleksi:

HashSet<string> colors1 = new HashSet<string> { "red", "green", "blue" };
HashSet<string> colors2 = new HashSet<string> { "blue", "yellow", "black" };

// 交集
HashSet<string> intersection = new HashSet<string>(colors1);
intersection.IntersectWith(colors2);

foreach (string color in intersection)
{
    Console.WriteLine(color);
}
Salin selepas log masuk

2. Generik

Generik ialah satu lagi alat penting dalam C# Mereka membenarkan kami menggunakan jenis biasa untuk memanipulasi data semasa menulis kod, meningkatkan prestasi penggunaan semula dan kebolehbacaan. Berikut ialah beberapa contoh umum generik:

  1. Kaedah generik

Kaedah generik boleh menentukan jenis parameternya apabila dipanggil, contohnya:

public T Max<T>(T a, T b) where T : IComparable<T>
{
    if (a.CompareTo(b) > 0)
    {
        return a;
    }
    
    return b;
}

int maxInteger = Max<int>(10, 20);
string maxString = Max<string>("abc", "xyz");
Salin selepas log masuk
  1. Kelas generik

Adalah kelas jenis A yang ditakrifkan apabila kelas a kelas tidak menentukan jenis tertentu, parameter jenis ditentukan hanya apabila ia digunakan segera. Contohnya:

public class Stack<T>
{
    private List<T> items;

    public Stack()
    {
        items = new List<T>();
    }

    public void Push(T item)
    {
        items.Add(item);
    }

    public T Pop()
    {
        T item = items[items.Count - 1];
        items.RemoveAt(items.Count - 1);
        return item;
    }
}

Stack<int> stack = new Stack<int>();
stack.Push(10);
stack.Push(20);
int top = stack.Pop();
Salin selepas log masuk

Dengan menggunakan generik, kita tidak perlu berulang kali melaksanakan fungsi serupa semasa menulis kod, yang meningkatkan kebolehgunaan semula dan kebolehbacaan kod.

Kesimpulan

Dengan menggunakan koleksi dan generik, kami boleh meningkatkan kecekapan dan kebolehbacaan kod C# dengan sangat baik. Koleksi menyediakan pelaksanaan pelbagai struktur data dan algoritma, membolehkan kami menyimpan dan memanipulasi data dengan lebih mudah. Generik membolehkan kami memanipulasi data dengan cara yang lebih umum dan selamat jenis semasa menulis kod. Saya harap contoh kod dalam artikel ini dapat memberi inspirasi kepada pembaca dan membantu mereka menulis kod C# yang lebih cekap.

Atas ialah kandungan terperinci Cara menggunakan koleksi dan generik untuk meningkatkan kecekapan kod dalam pembangunan 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

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.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

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)

Adakah fungsi generik menyelesaikan masalah jenis parameter variadik di Golang? Adakah fungsi generik menyelesaikan masalah jenis parameter variadik di Golang? Apr 16, 2024 pm 06:12 PM

Fungsi generik dalam Go menyelesaikan masalah jenis variadik: fungsi generik membenarkan parameter jenis ditentukan semasa masa jalan. Ini memungkinkan untuk menulis fungsi yang boleh mengendalikan hujah pelbagai jenis. Sebagai contoh, fungsi Max ialah fungsi generik yang menerima dua parameter setanding dan mengembalikan nilai yang lebih besar. Dengan menggunakan fungsi generik, kita boleh menulis kod yang lebih fleksibel dan umum yang boleh mengendalikan pelbagai jenis parameter.

Apakah sempadan atas dan bawah generik fungsi Java? bagaimana nak guna? Apakah sempadan atas dan bawah generik fungsi Java? bagaimana nak guna? Apr 26, 2024 am 11:45 AM

Generik fungsi Java membenarkan menetapkan sempadan atas dan bawah. Extends menentukan bahawa jenis data yang diterima atau dikembalikan oleh fungsi mestilah subjenis daripada jenis yang ditentukan, mis. Sempadan bawah (super) menentukan bahawa jenis data yang diterima atau dikembalikan oleh fungsi mestilah superjenis jenis yang ditentukan, mis. Penggunaan generik meningkatkan kebolehgunaan semula kod dan keselamatan.

Senario aplikasi khusus generik dalam golang Senario aplikasi khusus generik dalam golang May 04, 2024 am 11:45 AM

Senario aplikasi generik dalam Go: Operasi pengumpulan: Buat operasi pengumpulan yang sesuai untuk sebarang jenis, seperti penapisan. Struktur Data: Tulis struktur data tujuan umum seperti baris gilir, tindanan dan peta untuk menyimpan dan memanipulasi pelbagai jenis data. Algoritma: Tulis algoritma tujuan umum seperti pengisihan, carian dan pengurangan yang boleh mengendalikan pelbagai jenis data.

Apakah batasan fungsi generik di Golang? Apakah batasan fungsi generik di Golang? Apr 16, 2024 pm 05:12 PM

Had fungsi generik Go: hanya parameter jenis disokong, parameter nilai tidak disokong. Pengulangan fungsi tidak disokong. Parameter jenis tidak boleh ditentukan secara eksplisit, ia disimpulkan oleh pengkompil.

Aplikasi generik Java dalam pembangunan Android Aplikasi generik Java dalam pembangunan Android Apr 12, 2024 pm 01:54 PM

Aplikasi generik dalam pembangunan Android meningkatkan kebolehgunaan semula kod, keselamatan dan fleksibiliti. Sintaks terdiri daripada mengisytiharkan pembolehubah jenis T yang boleh digunakan untuk memanipulasi data berparameter jenis. Generik dalam tindakan termasuk penyesuai data tersuai, membenarkan penyesuai menyesuaikan diri dengan sebarang jenis objek data tersuai. Android juga menyediakan kelas senarai generik (seperti ArrayList) dan kaedah generik yang membenarkan manipulasi parameter pelbagai jenis. Faedah menggunakan generik termasuk kebolehgunaan semula kod, keselamatan dan fleksibiliti, tetapi penjagaan perlu diambil untuk menentukan sempadan yang betul dan menggunakannya secara sederhana untuk memastikan kebolehbacaan kod.

Apakah kesan generik Golang pada tandatangan dan parameter fungsi? Apakah kesan generik Golang pada tandatangan dan parameter fungsi? Apr 17, 2024 am 08:39 AM

Kesan generik pada tandatangan dan parameter fungsi Go termasuk: Parameter jenis: Tandatangan fungsi boleh mengandungi parameter jenis, menyatakan jenis yang boleh digunakan oleh fungsi. Kekangan jenis: Parameter jenis boleh mempunyai kekangan yang menentukan syarat yang mesti dipenuhi. Inferens jenis parameter: Pengkompil boleh membuat kesimpulan jenis parameter jenis yang tidak ditentukan. Menentukan jenis: Jenis parameter boleh dinyatakan secara eksplisit untuk memanggil fungsi generik. Ini meningkatkan kebolehgunaan semula dan fleksibiliti kod, membolehkan anda menulis fungsi dan jenis yang boleh digunakan dengan berbilang jenis.

Bolehkah parameter pembolehubah golang digunakan dalam fungsi generik? Bolehkah parameter pembolehubah golang digunakan dalam fungsi generik? Apr 29, 2024 pm 02:06 PM

Dalam Go, parameter pembolehubah boleh digunakan untuk fungsi generik, membenarkan penciptaan fungsi generik yang menerima bilangan parameter pembolehubah dan sesuai untuk berbilang jenis. Sebagai contoh, anda boleh mencipta Mod fungsi generik yang mencari elemen yang paling kerap berlaku dalam senarai tertentu: Mod menerima bilangan pembolehubah unsur jenis T. Ia mengira elemen dengan membuat kiraan untuk setiap elemen. Kemudian ia mencari elemen yang paling banyak muncul dan mengembalikannya sebagai mod. Dalam fungsi utama, anda boleh memanggil fungsi Mod untuk senarai rentetan dan senarai integer, yang masing-masing akan mengembalikan rentetan dan nombor dengan kejadian terbanyak.

Bagaimanakah jenis enum Java berfungsi dengan generik? Bagaimanakah jenis enum Java berfungsi dengan generik? May 04, 2024 am 08:36 AM

Gabungan jenis penghitungan dan generik dalam Java: Apabila mengisytiharkan penghitungan dengan generik, anda perlu menambah kurungan sudut, dan T ialah parameter jenis. Apabila membuat kelas generik, anda juga perlu menambah kurungan sudut, T ialah parameter jenis yang boleh menyimpan sebarang jenis. Gabungan ini meningkatkan fleksibiliti kod, keselamatan jenis dan memudahkan kod.

See all articles