Unterschied zwischen generischer und nicht generischer Sammlung in C#

Unterschied zwischen generischer und nicht generischer Sammlung in C#

Schlüsselunterschied - Generikum vs Nicht generisch Sammlung in C#
 

Eine generische Sammlung ist eine Klasse, die Typensicherheit bietet, ohne von einem Basissammlungstyp abzuleiten und typspezifische Mitglieder implementieren zu müssen. Eine nicht generische Sammlung ist eine spezielle Klasse für Datenspeicher und Abruf, die Unterstützung für Stapel, Warteschlangen, Listen und Hashtables bietet. Der Schlüsselunterschied zwischen generischer und nicht generischer Sammlung in C# ist das Eine generische Sammlung ist stark tippt, während eine nicht generische Sammlung nicht stark getippt wird.

INHALT

1. Überblick und wichtiger Unterschied
2. Was ist eine generische Sammlung in C#
3. Was ist eine nicht generische Sammlung in C#
4. Ähnlichkeiten zwischen generischer und nicht generischer Sammlung in C#
5. Nebeneinander Vergleich - generische vs nicht generische Sammlung in C# in tabellarischer Form
6. Zusammenfassung

Was ist eine generische Sammlung in C#?

Die nicht generischen Sammlungen wie ArrayList, Warteschlange, Stapel usw. kann Elemente verschiedener Datentypen speichern. Wenn der Programmierer beim Erhalten der Elemente eingeben, sollte sie auf den richtigen Datentyp eingeben. Andernfalls kann es eine Laufzeitausnahme verursachen. Die generischen Sammlungsklassen können verwendet werden, um dieses Problem zu überwinden. Generische Kollektionen speichern Elemente intern in Arrays ihrer tatsächlichen Typen. Daher ist nicht erforderlich.  Sie können verwendet werden, um Elemente des angegebenen Typs oder Typen zu speichern.  Einige generische Sammlungsklassen sind List, Wörterbuch, Sortelist, Hashset, Warteschlange, Stack .

Die GenericList enthält Elemente des angegebenen Typs. Es kann die Liste beim Hinzufügen von Elementen entsprechend erhöhen. Wenn es eine Aussage wie folgt gibt, sollten alle Elemente, die in der Liste1 gespeichert werden können, Ganzzahlen sein,

LISTE LIST1 - NEUE LISTE ();

Das generische Wörterbuch in C# ist eine Sammlung von Schlüssel und Werten. Wenn eine Anweisung wie folgt vorhanden ist, kann das Object Dictionary1 Int -Typ -Schlüssel- und String -Typwerte speichern.

Dictionary Dictionary1 = New Dictionary ();

Eine generische Sortenlist -Sammlung speichert standardmäßig Schlüssel- und Wertpaare in aufsteigender Reihenfolge der Schlüssel. Nachfolgend Beispiel speichert den Schlüssel des Int -Typs und des Wertes des String -Typs.

SortEdList s0 = new sortEdList ();

Das sind nur wenige Beispiele für die generische Sammlung in C#. Diese Sammlungen können mehrere Werte der angegebenen Datentypen speichern. Sie werden also stark getippt.

Was ist eine nicht generische Sammlung in C#?

Arrays können verwendet werden, um mehrere Elemente zu speichern. Ein Nachteil ist, dass es Elemente desselben Datentyps speichern kann. Es gibt Klassen in C#, die verwendet werden können, um viele Werte oder Objekte zu speichern, die als Sammlungen bezeichnet werden. Sammlungen helfen dabei, Objekte zu speichern, zu aktualisieren, zu löschen, zu suchen, Objekte zu sortieren. Die Größe der Sammlung kann erhöht oder dynamisch verringert werden.

Einige nicht generische Sammlungsklassen sind ArrayList, SortedList, Stack, Warteschlange und Hashtable. Jede Sammlungsklasse implementiert die iEnumerable -Schnittstelle. Es hilft, die Elemente der Elemente in der Sammlung mit der Foreach -Schleife durchzusetzen.

ArrayList ist eine Alternative zu einem Array. Wenn es ein Array gibt, das 10 Elemente speichern kann, kann es keine 20 Elemente speichern. Wenn das Array auf 10 Elemente initialisiert wurde, aber nur 5 Elemente speichert, ist der Rest nicht verwendet. Daher ist ein Array festgelegt. In einer ArrayList können je nach Index Elemente hinzufügen oder entfernen. Es ermöglicht eine dynamische Speicherzuweisung. Die Sortiermethode kann verwendet werden, um die Elemente in aufsteigender Reihenfolge zu sortieren.

Der Hashtabelle wird verwendet, um eine Sammlung von Schlüsselwertpaaren darzustellen. Sie sind basierend auf dem HashCode des Schlüssels organisiert. Daher hat jedes Element ein Schlüsselwertpaar. Der Schlüssel kann verwendet werden, um auf ein bestimmtes Element in der Sammlung zuzugreifen. Der Stapel repräsentiert den letzten in, zuerst Zugriff auf Artikel. Die Warteschlange wird zum ersten Mal beim ersten Auszug von Artikeln verwendet. Das sind einige der nicht generischen Sammlungen, die von C# unterstützt werden. Diese Sammlungen können Elemente verschiedener Typen speichern.

Was ist die Ähnlichkeit zwischen generischer und nicht generischer Sammlung in C#?

  • Sowohl generische als auch nicht generische Sammlung können verwendet werden, um mehrere Elemente in C# zu speichern.

Was ist der Unterschied zwischen generischer und nicht generischer Sammlung in C#?

Generische gegen nicht generische Sammlung in C#

Eine generische Sammlung ist eine Klasse, die Typensicherheit bietet, ohne von einem Basissammlungstyp abzuleiten und typspezifische Mitglieder implementieren zu müssen. Eine nicht generische Sammlung ist eine spezielle Klasse für Datenspeicher und Abruf, die Unterstützung für Stapel, Warteschlangen, Listen und Hash-Tabellen bietet.
 Namespace
Die generischen Sammlungsklassen befinden sich im System. Sammlungen. Generika -Namespace. Die nicht generischen Sammlungsklassen befinden sich im System. Sammlungsnamenspace.
Typ
Eine generische Sammlung wird stark getippt. Eine nicht generische Sammlung ist nicht stark getippt.
 Elemente speichern
Die generischen Sammlungen speichern Elemente intern in Arrays ihrer tatsächlichen Typen. Die nicht generischen Sammlungen speichern Elemente intern in Objektarrays, damit alle Datenarten speichern können.

Zusammenfassung - Generika vs Nicht generisch Sammlung in C#

In diesem Artikel wurde der Unterschied zwischen generischer und nicht generischer Sammlung in C# erörtert. Der Unterschied zwischen generischer und nicht generischer Sammlung besteht darin, dass eine generische Sammlung stark getippt wird, während eine nicht generische Sammlung nicht stark getippt wird.

Referenz:

1.„Wann zu generischen Sammlungen verwendet werden.Microsoft Docs. Hier verfügbar 
2.„Generische Sammlung in C#.”TutorialStacher.com. Hier verfügbar  
3."C# Sammlung:" Sammlung in C#, Tutorialstacher.com. Hier verfügbar  
4.„C# Sammlungen.”, Tutorials Point, 19. März. 2018. Hier verfügbar

Bild mit freundlicher Genehmigung:

1.'Logo c Sharp'by Microsoft (öffentlich zugänglich) über Commons Wikimedia