Tatasusunan vs Senarai: Perbandingan Penggunaan dalam C#

Tatasusunan Vs Senarai Perbandingan Penggunaan Dalam C



Tatasusunan dalam C# ialah satu set item dengan jenis data yang sama dan saiz khusus yang ditentukan. Ia mewakili sebahagian memori bersebelahan di mana unsur-unsur disimpan. Menggunakan indeks mereka, tatasusunan dalam C# menawarkan akses sewenang-wenang yang cepat dan mudah kepada ahli mereka. Senarai ialah struktur data dinamik dalam bahasa pengaturcaraan C# yang mewakili sekumpulan komponen ditaip yang serupa. Tidak seperti tatasusunan, senarai boleh membesar atau mengecil dalam saiz secara dinamik yang membolehkan penambahan, penyingkiran dan pengubahsuaian elemen yang cekap. Kedua-dua persamaan dan perbezaan antara tatasusunan C# dan senarai C# diliputi dalam artikel ini.

Pengisytiharan:

Tatasusunan diisytiharkan menggunakan 'jenis[] ArrayName;' sintaks di mana jenis menandakan jenis ahli dalam koleksi tatasusunan, dan 'ArrName' ialah tajuk yang diberikan kepada tatasusunan. Pengisytiharan tatasusunan dilambangkan dengan kurungan segi empat sama [].

menaip [ ] ArrayName = jenis baru [ ] ;

Senarai diisytiharkan menggunakan 'List LsName;' sintaks di mana jenis mewakili jenis data elemen dalam senarai, dan 'LsName' ialah nama yang diberikan kepada senarai. Tanda kurung sudut menunjukkan bahawa ia adalah pengisytiharan jenis generik.







Senaraikan < menaip > senarai nama = Senarai baru < menaip > ( ) ;

Permulaan:

Tatasusunan menggunakan pendakap kerinting {} untuk menyertakan nilai, manakala senarai menggunakan pembina List baharu diikuti oleh pendakap kerinting {} untuk menyertakan nilai.



menaip [ ] ArrayName = { v1 , v2 , v3 , ... } ;

Senaraikan < menaip > senarai nama = Senarai baru < menaip > { v1 , v2 , v3 , ... } ;

Menambah Nilai:

Adalah penting untuk diingat bahawa tatasusunan C# mempunyai saiz tertentu. Jika saiz yang berbeza diperlukan, tatasusunan baharu 'newArr' perlu dibuat dengan saiz yang dikehendaki (panjang semasa + bilangan nilai baharu). Tambahkan tatasusunan asal 'OrgArr' pada tatasusunan baharu dan tetapkan nilai baharu pada kedudukan baharu dalam tatasusunan baharu dan kemas kini rujukan kepada tatasusunan baharu.



Susunan. Salinan ( OrgArr , baruArr , OrgArr. Panjang ) ;

baruArr [ OrgArr. Panjang ] = 14 ; // nilai baharu

baruArr [ OrgArr. Panjang + 1 ] = 2 ; // nilai baharu

OrgArr = baruArr ; // Kemas kini rujukan int[] NewArr = new int[OrgArr.Length + 2];

Senarai menawarkan fleksibiliti dari segi pengurusan saiz. Apabila senarai dimulakan, ia bermula dengan kapasiti awal, tetapi ia boleh berkembang secara automatik apabila lebih banyak elemen ditambahkan. Keupayaan mengubah saiz dinamik ini membolehkan senarai menyesuaikan diri dengan keperluan yang berubah-ubah. Senarai C# menyediakan fungsi Add() untuk menambah nilai pada senarai. Begini cara anda boleh menambah nilai pada senarai C#:





Tatasusunan vs Senarai : Perbandingan Penggunaan dalam C #

Mengakses Nilai

Nilai dalam nombor tatasusunan diakses menggunakan notasi indeks [], iaitu menggunakan nombor indeks dalam kurungan dan disimpan ke pembolehubah lain.

jenis elemen = ArrayName [ indeks ] ;

Untuk mengakses nilai dalam senarai C#, anda juga boleh menggunakan notasi indeks [] bersama-sama dengan kedudukan indeks yang diingini serupa dengan tatasusunan.



jenis elemen = Senarai nama [ indeks ] ;

Mengeluarkan Nilai

Tatasusunan mempunyai panjang yang ditetapkan. Oleh itu, untuk mengalih keluar elemen, tatasusunan baharu mesti dibuat dengan saiz yang lebih kecil, dan elemen sedia ada mesti disalin. Ini boleh dilakukan dengan menggunakan fungsi Array.Copy() seperti yang dijelaskan dalam bahagian 'Menambah Nilai'. Dalam senarai C#, mengalih keluar nilai adalah lebih mudah dan lebih intuitif. Kelas List menyediakan kaedah 'buang' yang membolehkan anda mengalih keluar nilai tertentu daripada senarai.

senarai nama. Alih keluar ( unsur ) ;

Kira Nilai

Untuk mengira nilai dalam tatasusunan C#, anda boleh menggunakan atribut panjang tatasusunan. Sifat panjang memberikan anda jumlah bilangan nilai dalam tatasusunan.

int kira = arrayName. Panjang ;

Untuk mengira nilai dalam senarai C#, anda boleh menggunakan ciri 'kiraan' senarai itu. Jumlah keseluruhan elemen yang kini berada dalam senarai juga dikembalikan oleh atribut 'kira'.

int kira = senarai nama. Kira ;

Ulangi Nilai

Untuk mengulang nilai dalam tatasusunan C#, anda boleh menggunakan gelung 'untuk' dengan panjang tatasusunan sebagai keadaan gelung.

untuk ( int i = 0 ; i < ArrayName. Panjang ; i ++ ) {

jenis e = arrayName [ i ] ;

Konsol. WriteLine ( Ia adalah ) ;

}

Untuk mengulang nilai dalam senarai C#, anda boleh menggunakan gelung 'foreach' kerana ia memudahkan proses lelaran dengan mengulang secara automatik ke atas elemen.

untuk setiap ( taip e dalam listName ) {

Konsol. WriteLine ( Ia adalah ) ;

}

Contoh 1: Tatasusunan C#

Kod yang diberikan mengisytiharkan dan memulakan tatasusunan integer bernama 'Arr' dengan panjang 5 dan memberikan nilai kepada elemennya. Nilai yang diberikan kepada elemen tatasusunan ialah 11, 12, 13, 14, dan 15. Kod itu kemudiannya meneruskan untuk memaparkan elemen tatasusunan menggunakan gelung 'untuk'. Setiap komponen dipaparkan pada baris yang berbeza menggunakan kaedah Console.WriteLine().

Selepas memaparkan elemen asal, kod tersebut mengubah suai elemen pada indeks 2 dengan memberikannya dengan nilai baharu 10. Seterusnya, kod tersebut memaparkan tatasusunan yang diubah suai dengan mengulangi elemen sekali lagi menggunakan gelung 'untuk'. Akhir sekali, kod tersebut memaparkan jumlah bilangan nilai yang berada dalam tatasusunan menggunakan sifat 'Arr.Length' yang menghasilkan panjang tatasusunan.

menggunakan Sistem ;

Dummy kelas {

statik batal Utama ( ) {

int [ ] Arr = baru int [ 5 ] { sebelas , 12 , 13 , 14 , lima belas } ;

Konsol. WriteLine ( 'Unsur:' ) ;

untuk ( int i = 0 ; i < Arr. Panjang ; i ++ )

{

Konsol. WriteLine ( Arr [ i ] ) ;

}

Arr [ 2 ] = 10 ;

Konsol. WriteLine ( 'Suai suai tatasusunan:' ) ;

untuk ( int i = 0 ; i < Arr. Panjang ; i ++ )

{

Konsol. WriteLine ( Arr [ i ] ) ;

}

Konsol. WriteLine ( 'Bilangan elemen: ' + Arr. Panjang ) ;

}

}

Contoh 2: Senarai C#

Kod yang disediakan berikut menunjukkan penggunaan senarai C# untuk menyimpan dan memanipulasi koleksi integer. Pertama, kod ini memulakan senarai bernama 'Arr' dengan lima integer: 11, 12, 13, 14, dan 15. Ini dicapai menggunakan kelas List dan pembinanya bersama-sama dengan sintaks pemula.

Seterusnya, atur cara mencetak mesej 'Elemen:' dan meneruskan untuk mengulangi setiap elemen dalam senarai menggunakan gelung 'foreach'. Semasa setiap lelaran, elemen semasa dicetak ke konsol menggunakan kaedah Console.WriteLine().

Selepas itu, kod itu mengubah suai nilai pada indeks 2 senarai dengan memberikannya dengan nilai 10 (Arr[2] = 10). Baris ini menukar elemen ketiga dalam senarai daripada 13 kepada 10. Selepas pengubahsuaian, atur cara sekali lagi mencetak mesej 'Senarai yang diubah suai:' dan melelang ke atas senarai yang dikemas kini, mencetak setiap elemen ke konsol. Kod itu kemudian memaparkan bilangan nilai dalam senarai menggunakan 'Arr.Count'. Harta ini mengembalikan kiraan item yang terdapat dalam senarai yang, dalam senario berikut, adalah 5.

Akhir sekali, kod itu mengalih keluar elemen dengan nilai 4 daripada senarai menggunakan kaedah Arr.Remove(4). Kaedah ini mencari nilai yang ditentukan dalam senarai dan mengalih keluar kejadian pertamanya. Akhir sekali, atur cara mencetak mesej 'Senarai selepas penyingkiran:' dan mengulangi senarai sekali lagi, memaparkan setiap elemen yang tinggal selepas operasi penyingkiran.

menggunakan Sistem ;

menggunakan Sistem. Koleksi . Generik ;

Dummy kelas {

statik batal Utama ( ) {

Senaraikan < int > Arr = Senarai baru < int > ( ) { sebelas , 12 , 13 , 14 , lima belas } ;

Konsol. WriteLine ( 'Unsur:' ) ;

untuk setiap ( int n dalam Arr )

{

Konsol. WriteLine ( n ) ;

}

Arr [ 2 ] = 10 ;

Konsol. WriteLine ( 'Senarai yang diubah suai:' ) ;

untuk setiap ( int n dalam Arr )

{

Konsol. WriteLine ( n ) ;

}

Konsol. WriteLine ( 'Bilangan elemen: ' + Arr. Kira ) ;

Arr. Alih keluar ( 4 ) ;

Konsol. WriteLine ( 'Senarai selepas dialih keluar:' ) ;

untuk setiap ( int n dalam Arr )

{

Konsol. WriteLine ( n ) ;

}

}

}

Kesimpulan

Panduan ini merangkumi perbezaan sintaks asas antara tatasusunan C# dan senarai C#. Tatasusunan mempunyai panjang tetap dan diakses oleh indeks, manakala senarai bersaiz dinamik dan menyediakan kaedah tambahan untuk menambah dan mengalih keluar elemen. Bersama-sama itu, kami menyediakan program senarai C# yang mempamerkan pengisytiharan, permulaan, mengakses, mengubah suai, mengira dan menambah elemen.