Zum Hauptinhalt springen
Veröffentlicht am

ArrayList-Klasse in C#

Teilen:

Einführung

In der Programmierwelt suchen wir stets nach Werkzeugen, die es uns ermöglichen, Daten effizient zu speichern und zu verarbeiten. In C# ist die ArrayList-Klasse eines dieser Werkzeuge.

Was ist ArrayList?

Zunächst ist es wichtig zu verstehen, was ein ArrayList ist. Im Gegensatz zu herkömmlichen Arrays mit fester Größe ist der ArrayList eine dynamische Sammlung von Objekten. Er gehört zum Namespace System.Collections und ist für seine Fähigkeit bekannt, seine Größe automatisch anzupassen.

Eigenschaften von ArrayList:

  1. Dynamisch: Es ist nicht notwendig, eine Größe zum Zeitpunkt der Erstellung festzulegen.
  2. Objekttyp: Er speichert Objekte vom Typ object, was das Speichern verschiedener Datentypen ermöglicht.
  3. Geordnet: Elemente werden über einen Index zugegriffen und in ihrer Reihenfolge beibehalten.

Daten mit ArrayList verwalten

Die ArrayList-Klasse stellt verschiedene Methoden bereit, um die Verwaltung der gespeicherten Elemente zu erleichtern:

using System;
using System.Collections;

namespace Base {
  class ArrayListKlasse {
    private ArrayList schulbedarf = new ArrayList() {
      "Rucksack",
      "Federmäppchen",
      "Bleistift",
      "Radiergummi"
    };

    public void Run() {
      // Elemente hinzufügen
      schulbedarf.Add("Spitzer");
      schulbedarf.Add("Schere");

      // Ein bestimmtes Element entfernen
      schulbedarf.Remove("Rucksack");

      // Reihenfolge umkehren
      schulbedarf.Reverse();

      // Anzahl der Elemente anzeigen
      Console.WriteLine($"Anzahl der Schulbedarfsartikel: {schulbedarf.Count}");

      // Alle Elemente anzeigen
      foreach (var schulbedarfsartikel in schulbedarf)
        Console.WriteLine($"Schulbedarfsartikel: {schulbedarfsartikel}");
    }
  }
}

Vorteile und Einschränkungen

Der ArrayList bietet mehrere Vorteile, wie Flexibilität und einfache Handhabung. Er ist jedoch nicht frei von Einschränkungen:

  1. Performance: Da er vom Typ object ist, können Leistungskosten durch Boxing und Unboxing entstehen.
  2. Typisierung: Das Fehlen einer starken Typisierung kann zu Laufzeitfehlern führen.

Für viele Anwendungen kann List<T> eine effizientere Alternative sein, da sie stark typisiert ist.

Wann sollte man ArrayList verwenden?

Trotz seiner Einschränkungen ist der ArrayList nützlich, wenn man eine dynamische Sammlung benötigt, ohne sich auf einen bestimmten Datentyp festzulegen. Er ist besonders wertvoll in Szenarien, in denen die zu speichernden Daten heterogen sind oder wenn man sich über die Datenmenge nicht sicher ist.

Fazit

Die verschiedenen verfügbaren Werkzeuge zu verstehen ist für jeden Programmierer entscheidend. Die ArrayList-Klasse ist eines dieser Werkzeuge in C#. Sie bietet große Flexibilität, muss aber wie alle Werkzeuge im richtigen Kontext eingesetzt werden.

Happy coding!