Übersicht über Sammlungen in C #

In diesem Artikel lernen wir die Sammlungen in C # kennen. Sammelklassen sind spezialisierte Klassen zum Abrufen und Speichern von Daten. Es ordnet den Elementen dynamisch Speicher zu. Mithilfe dieser Funktion können wir verschiedene Vorgänge ausführen, z. B. Aktualisieren, Abrufen, Speichern usw. Sammlungen ähneln einem Array. Hier müssen wir im Gegensatz zu einem Array die Größe nicht vorher definieren.

Es gibt drei Möglichkeiten, mit Sammlungen zu arbeiten

  • System.Collections.Generic-Klassen
  • System.Collections.Concurrent-Klassen
  • System.Collections-Klassen

Beispiele für Sammlungen in C #

Nachfolgend einige Beispiele für verschiedene Arten von Auflistungen in C #: -

Beispiel # 1 - ArrayList

Es ist eine Sammlung von System.Collections. Sie können die Daten mehrerer Datentypen speichern und werden beim Hinzufügen der Daten automatisch erweitert.

Code:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ArrayListExample
(
class Program
(
static void Main(string() args)
(
var data = new ArrayList(); //arraylist collection
data.Add("Demo"); // add element
data.Add(1);
data.Add(5);
data.Add(26);
data.Add(56.4);
data.Add(32);
data.Remove(5); // remove element
foreach (object obj in data) // iteration
(
Console.WriteLine(obj);
Console.ReadLine();
)
)
)
)

Im obigen Beispiel gibt es eine Auflistung vom Typ ArrayList. Es gibt einige Elemente in ArrayList. Add () und Remove () sind die Methoden, die zum Hinzufügen bzw. Entfernen der Elemente aus der Auflistung verwendet werden. foreach wird für die Iteration verwendet und zeigt die Werte an.

Ausgabe:

Beispiel # 2 - Hier verwenden wir die Listenoperation

Es ist eine Auflistung von System.Collections.Generic-Namespace.

Code:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
(
class Program
(
static void Main(string() args)
(
var value = new List(); // list collection
value.Add("Cricket"); // add element
value.Add("Football");
value.Add("Volleyball");
value.Add("Hockey");
value.Add("Basketball");
value.Add("Tennis");
value.Remove("Football"); // remove element
value.Remove("Tennis");
value.Insert(3, "Badminton"); // insert element
foreach (string st in value)
(
Console.WriteLine(st);
Console.ReadLine();
)
)
)
)

Im obigen Beispiel ist die Auflistung vom Listentyp. Mit den Methoden Add () und Remove () werden die Elemente der Liste hinzugefügt bzw. daraus entfernt. Einfügen () wird auch verwendet, um das Element an einem definierten Index in die Liste einzufügen. Foreach wird für die Iteration verwendet und zeigt die Werte an.

Ausgabe:

Beispiel # 3: Sortierte Liste

Es besteht aus Schlüsseln und Werten in einer Sammlung.

Code:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
(
class Program
(
static void Main(string() args)
(
var value = new SortedList(); // sortedlist collection
value.Add("java", 3); // add element
value.Add("javascript", 4);
value.Add("c-sharp", 5);
value.Add("dotnet", 25);
value.Add("python", 27);
value.Add("typescript", 57);
foreach (var pair in value)
(
Console.WriteLine(pair);
Console.ReadLine();
)
)
)
)

Im obigen Beispiel handelt es sich bei der Sammlung um eine sortierte Liste. Die Liste enthält mehrere Schlüssel- und Wertepaare. Es repräsentiert im Grunde das sortierte Paar von Schlüsseln und Werten.

Ausgabe:

Beispiel 4: Verknüpfte Liste

Es ermöglicht grundsätzlich den sequentiellen Zugriff auf die Elemente.

Code:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
(
class Program
(
static void Main(string() args)
(
var value = new LinkedList(); // linkedlist collection
value.AddLast(13); // add element
value.AddLast(33);
value.AddLast(23);
value.AddLast(51);
value.AddLast(60);
value.AddFirst(4);
value.AddFirst(6);
LinkedListNode node = value.Find(51); // find the node
value.AddBefore(node, 40);
foreach (int num in value)
(
Console.WriteLine(num);
Console.ReadLine();
)
)
)
)

Im obigen Beispiel ist die Auflistung vom Typ Linkedlist. Mit AddLast () wird das Element an der letzten Position platziert, während mit AddFirst () das Element an der ersten Position der Liste platziert wird. Linkedlist besteht aus einem Knoten. Find () wird verwendet, um den Wert zu finden und den Wert davor zu platzieren.

Ausgabe :

Beispiel # 5 - Dictionary

Es besteht aus einem eindeutigen Paar von Schlüsseln und Werten.

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
(
class Program
(
static void Main(string() args)
(
var pair = new Dictionary(); // dictionary collection
pair.Add("in", "India"); // add keys and values
pair.Add("af", "Africa");
pair.Add("us", "United States");
pair.Add("ja", "Japan");
pair.Add("ch", "China");
pair.Add("ca", "Canada");
Console.WriteLine("Keys present in the dictionary:");
var key = new List(pair.Keys);
foreach (string k in key)
(
Console.WriteLine("(0)", k);
)
Console.WriteLine("Values present in the dictionary:");
var value = new List(pair.Values);
foreach (string val in value)
(
Console.WriteLine("(0)", val);
)
Console.ReadLine();
)
)
)

Im obigen Beispiel ist die Auflistung vom Typ Wörterbuch, das den Schlüssel und ihre Werte enthält. Foreach wird für die Iteration von Schlüsseln und Werten verwendet.

Ausgabe

Beispiel # 6 - Stack

Es basiert auf der Last-In-First-Out-Struktur. Das letzte Element der Warteschlange ist das erste, das entfernt wird.

Code:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
(
class Program
(
static void Main(string() args)
(
var value = new Stack(); // stack collection
value.Push(10); // adding the element
value.Push(40);
value.Push(33);
value.Push(62);
value.Push(48);
value.Push(21);
value.Push(31);
Console.WriteLine(value.Pop());
Console.WriteLine(value.Peek());
Console.WriteLine();
foreach (int item in value)
(
Console.WriteLine(item);
Console.ReadLine();
)
)
)
)

Im obigen Beispiel ist die Auflistung vom Typ stack. Mit push () wird das Element oben eingefügt. Pop () dient zum Entfernen und Zurückgeben des Elements und Peek () zum Zurückgeben des obersten Elements des Stapels.

Ausgabe:

Beispiel # 7 - Queue

Es basiert auf der First-In-First-Out-Struktur. Das erste Element der Warteschlange ist das erste, das entfernt wird.

Code:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Collections
(
class Program
(static void Main(string() args)
(
var value = new Queue(); // queue collection
value.Enqueue("Item 1"); // add element
value.Enqueue("Item 2");
value.Enqueue("Item 3");
value.Enqueue("Item 4");
value.Enqueue("Item 5");
value.Enqueue("Item 6");
value.Enqueue("Item 7");
Console.WriteLine(value.Dequeue());
Console.WriteLine(value.Peek());
Console.WriteLine();
foreach (string num in value)
(
Console.WriteLine(num);
Console.ReadLine();
)
)
)
)

Im obigen Beispiel; Sammlung ist vom Typ Warteschlange. Enqueue () steht für das einfügende Element am Ende der Warteschlange. Mit Dequeue () wird das Element am Anfang der Warteschlange entfernt . Peek () wird für die Rückgabe des Artikels verwendet.

Ausgabe:

Es gibt also viele Möglichkeiten, wie wir die Sammlungen verwenden können. Sammlungen ähneln einem Array. Hier müssen wir im Gegensatz zum Array die Größe nicht vorher definieren.

Empfohlene Artikel

Dies war eine Anleitung zu Sammlungen in C #. Hier diskutieren wir die Übersicht und verschiedene Beispiele für Sammlungen in C # mit Codeimplementierung und Ausgabe. Sie können sich auch die folgenden Artikel ansehen, um mehr zu erfahren -

  1. Komplette Anleitung zum Sortieren in C #
  2. Methoden von Iteratoren in C #
  3. Arten von Mustern in C #
  4. Wie funktionieren Zeiger in C #?