C#:ssa array ja ArrayList ovat tunnetusti eniten käytettyjä tietotyyppejä. Taulukko on C#-ohjelmointikielen perustoiminto, kun taas C#:n Arraylist on kokoelma.
Sekä Array että ArrayList käytetään tietojen tallentamiseen, eikä tallennettavalle tietotyypille ole rajoituksia.
ArrayList vs Array C#:ssa
Array ja ArrayList eroavat siinä, että taulukko tallentaa samantyyppisiä tietoja, kun taas taulukkoluettelot voivat tallentaa tietoja eri tietotyypeistä.
Jotta ArrayListin dataa pääsee käsiksi, se on silmukattava objektin avulla, kun taas taulukossa niihin pääsee helposti käsiksi ilman objektia.
ArrayList- ja Array-vertailutaulukko C#-muodossa (taulukkomuodossa)
Vertailuparametri | ArrayList | Array |
---|---|---|
Tyyppi | ArrayList on ei-yleinen tyyppi | Taulukko on vahvasti kirjoitettu. Vain saman tietotyypin arvot voidaan tallentaa |
Elementtien lukumäärä | Se on dynaaminen, joten useita tietotyyppejä voidaan tallentaa | Vain kiinteä määrä elementtejä voidaan lisätä |
esitys | Se heikentää suorituskykyä, koska käytetään nyrkkeilyä ja purkamista | Sillä on parempi suorituskyky. |
NULL arvo | Se voi hyväksyä NULL-arvon | Ei |
Luokka | Se käyttää staattista luokkaa | Se käyttää nimiavaruutta System.collection |
Mikä on ArrayList C#:ssa?
Matriisilistat alustetaan luettelorajapinnalla. Sitä pidetään yhtenä C3-kielen joustavimmista tiedoista. Ohjelmointikielien kokoelma on erityinen luokka, joka tallentaa tiedot ja antaa ohjelmoijille mahdollisuuden hakea niitä.
Esimerkki
System.collectionin käyttäminen;
ArrayList a = new ArrayList();
a.add(1, "hei");
a.add(4);
a.add(8.23);
a.add(null);
Jotkut toiminnot, joita käytetään vuorovaikutuksessa taulukkoon tallennettujen tietojen kanssa.
Mikä on Array C#:ssa?
Array on tietotyyppi, johon ohjelmoija voi tallentaa samantyyppisiä ja kiinteän pituisia tietoja. Pituuden ja tietojen arvoa ei voi muuttaa ajon aikana. Kaikille taulukon elementeille annetaan indeksiarvo ja taulukon indeksi on nolla.
Siksi oletusarvo on nolla taulukon ensimmäisen elementin indeksistä. Syntaksi taulukon ilmoittamiselle ja määrittämiselle C#:ssa on seuraava. Koska matriisi on viitetietotyyppi, sen muisti varataan keon muistiin.
Int[] array = uusi int[] { 10, 20, 30, 40};
10 20 30 40 tiedot
0 1 2 3 Indeksit
Joitakin tärkeitä kohtia taulukoista.
Tärkeimmät erot ArrayListin ja Arrayn välillä C#:ssa
- Taulukon koko on kiinteä ja se sisältää peräkkäisen kokoelman kaikkia samantyyppisiä elementtejä. Matriisiluettelon koko ei ole kiinteä ja se kasvaa 2^n:n myötä.
- Taulukon dimensio ja kunkin ulottuvuuden pituus alustetaan, kun taulukko luodaan. Ajon aikana ei ole mahdollista muuttaa taulukon pituuden arvoa. ArrayListille taulukkoluettelon pituuden arvoa voidaan muuttaa dynaamisesti.
- Ensimmäisen elementin indeksi taulukossa 0 ja viimeisen elementin indeksi on n-1, jossa n on taulukon koon pituus.
- ArrayList sisältää eri tietotyyppejä olevia elementtejä, kun taas array sisältää samantyyppisiä tietoja. Esimerkiksi jos Array on kokonaislukutyyppiä, taulukkoon voidaan tallentaa vain kokonaislukuja.
- Array on vahvasti kirjoitettu tietotyyppi ja sen tehokkuus on parempi kuin ArrayList. Koska Arraylistissa tarvitaan purkamista ja nyrkkeilyä, se on vähemmän tehokasta.
- ArrayListin koko kasvaa automaattisesti, joten sinun on annettava mikä tahansa koko.
Johtopäätös
Array ja Arraylist ovat tietotyyppejä, joiden avulla kehittäjä voi tallentaa useita saman tietotyypin elementtejä Arrayiin ja eri tietotyyppejä taulukkoluetteloon. Useat kehittäjät käyttävät Arraylistia, koska Arraylistilla on erilaisia menetelmiä, joita ei ole missään muussa tietotyypissä, kuten Repeat(), Reverse(), BinarySearch ja monet muut.
Arraya pidetään kiinteän kokoisena tietotyyppinä ja siihen pääsee helposti käsiksi, kun taas ArrayListissä täytyy käyttää objektia ja pisteoperaattoria päästäkseen käsiksi tietotyyppiin tallennettuihin elementteihin.
No, jos kehittäjän on tallennettava samantyyppisiä elementtejä ja sillä on oltava kiinteä koko, sen tulisi käyttää taulukkoa, muuten tulisi käyttää ArrayList-luetteloa.
Molemmat tekevät saman työn elementtien tallentamisessa, mutta suurin ero on kiinteä koko ja dynaaminen koko. Joten jos haluat tallentaa erilaisia tietotyyppejä, kuten null, char tai mitä tahansa muuta, sinun tulee käyttää ArrayListiä, koska se ei ole yleinen tietotyyppi.
Jos taas haluat rajoittaa käyttäjää lisäämään eri tietotyyppejä tietorakenteeseen, tulisi käyttää taulukkoa, koska se sallii vain samanlaisen tietotyypin lisäämisen taulukkoon.