Verschillen tussen C # lijst versus array

C # Lijstklasse vertegenwoordigt een sterk getypeerde lijst met objecten waartoe de index toegang heeft en ondersteunt het opslaan van waarden van een specifiek type zonder naar of van een object te casten.

Lijst, waarbij parameter T het type elementen in de lijst is. Bepaalde functies van Lijst worden hieronder gegeven:

Voeg gehele waarden toe aan de Lijst-verzameling:

Lijst intList = nieuwe lijst ();

intL) ist.Add (2);

intList.Add (3);

intList.Add (4);

Voeg tekenreekswaarden toe aan de lijstverzameling:

Lijstkleuren = nieuwe lijst ();

colours.add ("rood");

colours.add ("wit");

colours.add ("groen");

Haal items uit een lijstcollectie op met for loop:

foreach (stringkleur in kleuren) (

MessageBox.Show (kleur)

)

Een array slaat een reeks opeenvolgende elementen van hetzelfde type op. Het wordt gebruikt om een ​​verzameling gegevens op te slaan, maar de array kan worden beschouwd als een verzameling variabelen van hetzelfde type die zijn opgeslagen op aangrenzende geheugenlocaties. Alle arrays bestaan ​​uit aaneengesloten geheugenlocaties, waarbij het laagste adres overeenkomt met het eerste element en het hoogste adres met het laatste element.

Declareer een array in C #:

datatype () typeName; // DataType wordt gebruikt om het type elementen in de array op te geven

Een array initialiseren:

double () balance = new double (50);

Waarden toewijzen aan een array:

double () saldo = (23, 0, 34, 56, 44, 32);

Toegang tot matrixelementen;

Foreach (int waarde in balans) (

Console.WriteLine ("element is:" + waarde);

)

Maak en initialiseer tegelijkertijd een array:

Int () steps = new int (6) (1, 2, 3, 4, 5, 6);

Kopieer een matrixvariabele naar een andere doelmatrixvariabele:

Int () count = stappen;

zowel doel als bron wijzen naar dezelfde geheugenlocatie

Head to Head-vergelijking tussen C # -lijst versus array- infographics

Hieronder staan ​​de top 8 verschillen tussen C # List versus Array

Belangrijkste verschillen tussen C # lijst versus array

Beide C # List versus Array-prestaties zijn populaire keuzes in de markt; laten we enkele van de belangrijkste verschillen tussen C # List versus Array bespreken:

  1. De lijst is bovenop Array gebouwd, terwijl Array een gegevensstructuur op een lager niveau is.
  2. Een lijst wordt geleverd in de vorm van API's in C # met een bovenliggende klasse als Collection, terwijl Array de gegevensstructuur op een lager niveau is met hun eigen specifieke eigenschappen.
  3. Een lijst is niet op index gebaseerd, gebaseerd op het concept van knooppunten, terwijl arrays op index gebaseerde datastructuren zijn met het laagste adres aan het eerste element en het hoogste adres aan het laatste element in de array.
  4. Lijst is dynamisch van aard, dat wil zeggen dat hun grootte automatisch toeneemt met meer elementen, terwijl arrays een structuur met een vaste grootte hebben en eenmaal geïnitialiseerd niet kunnen worden gereset.
  5. De lijst is beter voor frequent invoegen en verwijderen, terwijl arrays veel beter geschikt zijn voor frequente toegang tot het elementen-scenario.
  6. Lijst neemt veel meer geheugen in beslag omdat elk knooppunt de Lijst heeft zijn eigen geheugenset, terwijl Arrays geheugen-efficiënte gegevensstructuur zijn.
  7. Een lijst is afgeleid van de verzameling die een meer generiek gegevenstype bevat, terwijl array vast is en een sterker gegevenstype opslaat.
  8. Lijst bevat knooppunten die geheugenlocaties hebben hoeft niet aaneengesloten van aard te zijn, terwijl Array de elementen met hun geheugenlocatie bevat die aaneengesloten van aard zijn.
  9. Niet-aaneengesloten eigenschappen van List zorgen ervoor dat ze meer tijd nodig hebben om toegang te krijgen tot de elementen, terwijl aaneengesloten eigenschappen van Array ze zeer efficiënt maken voor toegang tot de elementen.
  10. Maak een lijst met generieke hefboomeffecten, het is in feite een typeveilige versie van ArrayList en genereert een compilatiefout terwijl Arrays met zijn typeveilige, uiterst efficiënte qua snelheid en prestaties meerdere dimensies ondersteunen.

Head-to-Head vergelijking tussen C # List vs Array

Hieronder vindt u de bovenste vergelijking tussen C # List vs Array

Vergelijkingsbasis tussen C # -lijst versus arrayLijstreeks
scheppingGebouwd op de top van ArrayOriginele gegevensstructuur, gebaseerd op indexconcept
GeheugenBezet meer geheugen dan ArrayMemory-efficiënte
LengteLengte varieertVaste maatlengte
GebruikFrequent invoegen en verwijderenFrequente toegang tot elementen
ResizeResize List is dynamisch van aardHet formaat van arrays is duur
StructuurNiet-aaneengesloten geheugenAaneengesloten geheugenlocatie
IndexerenNiet op index gebaseerde structuurIndex gebaseerd met het laagste adres als eerste en het hoogste adres als laatste
ToegangToegangselement is tijdrovend hoewel gebaseerd op een positie van elementToegangselement is constant-tijdbedrijf, ongeacht de locatie van het element

Conclusie - C # List vs Array

Beide C # List versus Array zijn verschillende typen, hebben verschillende mogelijkheden en slaan hun gegevens op verschillende manieren op. Deze opslagmogelijkheden en het ontwerp van beide C # List versus Array-datastructuren maken ze uniek op hun eigen manier. Een array heeft een vaste grootte en als deze eenmaal is toegewezen, kan er geen items meer aan worden toegevoegd of verwijderd, ook moeten alle elementen van hetzelfde type zijn. Het is dus een type veilige en meest efficiënte lineaire datastructuur in termen van snelheid en prestaties. Array ondersteunt ook meerdere dimensies. De lijst biedt meer generieke mogelijkheden en is afgeleid van Collection API's. In tegenstelling tot Array zijn ze dynamisch van aard en kunnen ze automatisch van formaat veranderen door regelmatig elementen in te voegen en te verwijderen. Het is in wezen een typeveilige versie van een ArrayList-gegevensstructuur. Type veiligheidsfunctie betekent dat er geen boksen of unboxing is die de prestaties zou verbeteren en als iemand probeert een element van het verkeerde type toe te voegen, genereert dit een compilatie-fout.

C # List vs Array performance is een lineaire datastructuur die goed geschikt is voor verschillende scenario's. Als frequent invoegen en verwijderen plaatsvindt en tegelijkertijd geheugen geen beperking is, is Lijst een ideale keuze, terwijl in scenario's zoals frequente toegang tot elementen van vereist met een geheugenbeperking, Array een betere optie is. Het hangt allemaal af van het gebruik en de behoefte. Een array is altijd een lijst van aard, maar een lijst is geen array. De array biedt beide soorten toegang, direct en sequentieel, terwijl List alleen sequentiële toegang toestaat. En dit komt omdat de manier waarop deze gegevensstructuren in het geheugen worden opgeslagen. Aangezien List is afgeleid van Collection, kunnen er verschillende implementaties zijn, een van deze implementaties is ArrayList, een klasse die het gedrag van de List implementeert met behulp van arrays als gegevensstructuur. Een array is sterk verbonden met het hardware-idee van continu, aaneengesloten geheugen, waarbij elk element identiek in grootte is. Beide C # List versus Array prestatie-ideeën komen redelijk goed overeen, gebaseerd op scenario's. Aan het einde van de dag komt het allemaal neer op de vereiste, hoewel het geheugengedeelte in de wereld van vandaag veilig naast elkaar kan staan, omdat een hoog geheugen een norm is geworden.

Aanbevolen artikel

Dit is een leidraad geweest voor de belangrijkste verschillen tussen C # List versus Array. Hier bespreken we ook de belangrijkste verschillen tussen C # List versus Array met infographics en vergelijkingstabel. U kunt ook de volgende artikelen bekijken -

  1. Matrixlijsten versus Java-lijst - waardevolle verschillen
  2. Geweldige gids over C versus Java
  3. Java Vector en ArrayList
  4. C # vs Js - Awesome Differences
  5. C # Array vs List: Differences
  6. Vereisen versus importeren: wil de voordelen weten
  7. C vs C #: Wat zijn de beste verschillen
  8. C # vs JavaScript: wat zijn de functies