Unterschiede zwischen C # -Liste und Array

Die C # -List-Klasse stellt eine stark typisierte Liste von Objekten dar, auf die der Index zugreifen kann, und unterstützt das Speichern von Werten eines bestimmten Typs, ohne sie in ein Objekt oder von einem Objekt umzuwandeln.

Liste, wobei Parameter T die Art der Elemente in der Liste ist. Bestimmte Funktionen von List sind nachfolgend aufgeführt:

Fügen Sie der List-Auflistung ganzzahlige Werte hinzu:

List intList = new List ();

intL) ist.Add (2);

intList.Add (3);

intList.Add (4);

Fügen Sie der List-Auflistung Zeichenfolgenwerte hinzu:

Listenfarben = neue Liste ();

colors.add ("rot");

colors.add ("weiß");

colors.add ("grün");

Abrufen von Elementen aus einer Listensammlung mithilfe der for-Schleife:

foreach (Stringfarbe in Farben) (

MessageBox.Show (Farbe)

)

Ein Array speichert eine sequentielle Sammlung von Elementen desselben Typs mit fester Größe. Es wird zum Speichern einer Sammlung von Daten verwendet, aber das Array kann als Sammlung von Variablen desselben Typs betrachtet werden, die an zusammenhängenden Speicherorten gespeichert sind. Alle Arrays bestehen aus zusammenhängenden Speicherplätzen, wobei die niedrigste Adresse dem ersten Element und die höchste Adresse dem letzten Element entspricht.

Deklarieren Sie ein Array in C #:

datatype () typeName; // Mit DataType wird der Elementtyp im Array angegeben

Ein Array initialisieren:

double () balance = new double (50);

Zuweisen von Werten zu einem Array:

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

Zugriff auf Array-Elemente;

Foreach (int value in balance) (

Console.WriteLine ("Element ist:" + Wert);

)

Erstellen und initialisieren Sie gleichzeitig ein Array:

Int () Schritte = neue int (6) (1, 2, 3, 4, 5, 6);

Kopieren Sie eine Array-Variable in eine andere Ziel-Array-Variable:

Int () count = steps;

Sowohl Ziel als auch Quelle zeigen auf denselben Speicherort

Head to Head Vergleich zwischen C # List und Array Infographics

Nachfolgend sind die acht wichtigsten Unterschiede zwischen C # -Liste und Array aufgeführt

Hauptunterschiede zwischen C # -Liste und Array

Die Performance von C # -Listen und Arrays ist auf dem Markt weit verbreitet. Lassen Sie uns einige der Hauptunterschiede zwischen C # -Liste und Array diskutieren:

  1. Die Liste wird oben auf dem Array erstellt, während Array eine Datenstruktur einer niedrigeren Ebene ist.
  2. Eine Liste wird in Form von APIs in C # mit einem übergeordneten Element als Collection-Klasse ausgeliefert, während Array die Datenstruktur der unteren Ebene mit ihren eigenen spezifischen Eigenschaften ist.
  3. Eine Liste basiert nicht auf einem Index, sondern auf dem Konzept von Knoten, während Arrays indexbasierte Datenstrukturen sind, bei denen dem ersten Element die niedrigste Adresse und dem letzten Element des Arrays die höchste Adresse zugewiesen wird.
  4. Listen sind dynamischer Natur, dh ihre Größe steigt automatisch mit der Einfügung weiterer Elemente, während Arrays eine Struktur mit fester Größe aufweisen, die nach der Initialisierung nicht zurückgesetzt werden kann.
  5. Die Liste eignet sich besser zum häufigen Einfügen und Löschen, wohingegen Arrays besser für den häufigen Zugriff auf Elementszenarien geeignet sind.
  6. List belegt viel mehr Speicher, da jeder in List definierte Knoten einen eigenen Speichersatz hat, während Arrays eine speichereffiziente Datenstruktur darstellen.
  7. Eine Liste wird von Collection abgeleitet, die einen allgemeineren Datentyp enthält, während Array fest ist und einen stärkeren Datentyp speichert.
  8. Listen enthalten Knoten, deren Speicherorte nicht zusammenhängender Natur sein müssen, während Array die Elemente mit ihren Speicherorten enthält, die zusammenhängender Natur sind.
  9. Durch die nicht zusammenhängende Eigenschaft von List benötigen sie mehr Zeit für den Zugriff auf die Elemente, während durch die zusammenhängende Eigenschaft von Array der Zugriff auf die Elemente sehr effizient wird.
  10. Listen Sie allgemeine Hebeleffekte auf, da es sich im Grunde genommen um eine typsichere Version von ArrayList handelt und beim Kompilieren ein Fehler auftritt, während Arrays mit ihrer typsicheren, in Bezug auf Geschwindigkeit und Leistung äußerst effizienten Funktion mehrere Dimensionen unterstützen.

Head to Head Vergleich zwischen C # List und Array

Unten sehen Sie den höchsten Vergleich zwischen C # List und Array

Vergleichsbasis zwischen C # List und ArrayAufführenArray
SchaffungErrichtet auf der Oberseite des ArraysUrsprüngliche Datenstruktur, basierend auf dem Indexkonzept
ErinnerungBelegen Sie mehr Speicher als ArraySpeichereffizient
LängeLänge variierenFeste größe länge
VerwendungHäufiges Einfügen und LöschenHäufiger Zugriff auf Elemente
Größe ändernDie Größenänderungsliste ist dynamischer NaturDas Ändern der Größe von Arrays ist teuer
StrukturNicht zusammenhängender SpeicherAngrenzender Speicherort
IndizierungNicht indexbasierte StrukturIndex basierend auf der niedrigsten Adresse als erste und der höchsten Adresse als letzte
ZugriffDer Zugriff auf das Element ist zeitaufwändig, auch wenn dies auf der Position des Elements basiertDas Zugriffselement ist unabhängig vom Elementstandort ein Betrieb mit konstanter Zeit

Fazit - C # Liste vs. Array

Beide C # -Listen und Arrays sind unterschiedliche Typen mit unterschiedlichen Funktionen und speichern ihre Daten auf unterschiedliche Weise. Diese Speichermöglichkeiten und das Design beider C # -Listen- und Array-Datenstrukturen machen sie auf ihre eigene Weise einzigartig. Ein Array hat eine feste Größe, und sobald es zugewiesen ist, kann man keine Elemente hinzufügen oder daraus entfernen. Außerdem müssen alle Elemente vom gleichen Typ sein. Somit ist es eine typsichere und effizienteste lineare Datenstruktur in Bezug auf Geschwindigkeit und Leistung. Array unterstützt auch mehrere Dimensionen. Die Liste bietet allgemeinere Funktionen und wurde von Sammlungs-APIs abgeleitet. Im Gegensatz zu Array sind sie dynamischer Natur und können bei häufigem Einfügen und Löschen von Elementen die Größe automatisch ändern. Es handelt sich im Wesentlichen um eine typsichere Version einer ArrayList-Datenstruktur. Typensicherheitsfunktion bedeutet, dass es kein Boxing oder Unboxing gibt, das die Leistung verbessert. Wenn jemand versucht, ein Element des falschen Typs hinzuzufügen, wird beim Kompilieren ein Fehler generiert.

Die Leistung von C # -Liste vs. Array ist eine lineare Datenstruktur, die für verschiedene Szenarien gut geeignet ist. Wenn häufiges Einfügen und Löschen auftritt und gleichzeitig Speicher keine Einschränkung ist, ist Liste die ideale Wahl, während in Szenarien wie häufigem Zugriff auf Elemente, die eine Speicherbeschränkung erfordern, Array die bessere Option ist. Es hängt alles von Anwendungsfall und Anforderung ab. Ein Array ist immer eine Liste in der Natur, aber eine Liste ist kein Array. Das Array erlaubt sowohl direkten als auch sequentiellen Zugriff, während List nur sequentiellen Zugriff erlaubt. Und das liegt daran, wie diese Datenstrukturen im Speicher gespeichert sind. Da List von Collection abgeleitet ist, kann es verschiedene Implementierungen geben. Eine dieser Implementierungen ist ArrayList, eine Klasse, die das Verhalten der List mithilfe von Arrays als Datenstruktur implementiert. Ein Array ist stark an den Hardware-Begriff des kontinuierlichen, zusammenhängenden Speichers gebunden, wobei jedes Element die gleiche Größe hat. Beide Ideen für die Leistung von C # -Listen und Arrays stimmen je nach Szenario recht gut überein. Letztendlich läuft alles auf die Anforderung hinaus, obwohl der Speicherteil in der heutigen Welt eine sichere Nebenbedingung sein kann, da ein hoher Speicher zur Norm geworden ist.

Empfohlener Artikel

Dies war eine Anleitung zu den wichtigsten Unterschieden zwischen C # -Liste und Array. Hier werden auch die wichtigsten Unterschiede zwischen C # -Liste und Array mit Infografiken sowie die Vergleichstabelle erörtert. Sie können auch einen Blick auf die folgenden Artikel werfen -

  1. Array-Listen vs Java-Liste - Wertvolle Unterschiede
  2. Erstaunlicher Führer auf C gegen Java
  3. Java Vector und ArrayList
  4. C # vs Js - Tolle Unterschiede
  5. C # Array vs Liste: Unterschiede
  6. Require vs Import: Möchten Sie die Vorteile kennen
  7. C vs C #: Was sind die besten Unterschiede
  8. C # vs JavaScript: Was sind die Funktionen