Was ist eine Arraylist?

Eine ArrayList in der Computerprogrammierung ist eine Datenstruktur, die sich wie ein Computerarray verhält, aber auch die Fähigkeit implementiert, die Größe des Arrays bei Bedarf dynamisch zu erweitern. Im Gegensatz zu einem intrinsischen Array -Datentyp, der während der Programmausführung nicht geändert werden kann, kann die ArrayList -Struktur die Größe des Arrays als Reaktion auf die Hinzufügung oder Löschung von Elementen wachsen und verkleinern. Es hat ein sehr günstiges Leistungsprofil, das einen schnellen Zufallszugriff auf die Datenerfassung ermöglicht. Es gibt jedoch zwei Fälle, in denen es langsamer ist als einige andere Datenstrukturen, nämlich die Zugabe und Entfernung von Elementen aus der Mitte des Arrays. Die meisten objektorientierten Programmiersprachen haben eine Art von Implementierung einer solchen Liste, obwohl sie manchmal als dynamische Arrays bezeichnet werden.ED mit verknüpften Listen. Mit der Fähigkeit, die Größe des Arrays nach Bedarf zu erhöhen, ist es ein sehr ausgewogener Ansatz, der sowohl Flexibilität als auch Geschwindigkeit berücksichtigt. Wenn Elemente aus einer solchen Liste entfernt werden, wird die Größe des Arrays reduziert, wodurch der Speicherplatz freigelassen wird.

Ein Vorteil der Verwendung einer ArrayList über einige andere Datenstrukturen besteht darin, dass ein Wrapper -Objekt nicht erforderlich ist, um die gespeicherten Daten zu enthalten. Bei einer verknüpften Liste oder einer Hash -Tabelle wird normalerweise ein separates Objekt benötigt, um die Technik beizubehalten, um die Sammlung zu halten und zu manipulieren. Bei einer ArrayList sind die einzigen Informationen, die über die Datenobjekte benötigt werden, die Adresse des Objekts im Speicher. Dies bedeutet

Ein potenzielles Problem bei der Verwendung einer ArrayList kann aus dem Implementierungs- und Speicherverwaltungssystem stammen. Die meisten Arrays sind albefindet sich als aufeinanderfolgende Speicherorte. Um also eine ArrayList einer bestimmten Größe zu verwenden, muss mindestens so viel Speicher in einer ununterbrochenen Folge von Blöcken verfügbar sein. Das dynamische Array könnte sich mehrmals ändern, so

Die Leistung einer ArrayList ähnelt der der Verwendung eines Standardarrays, obwohl die Zugriffszeiten etwas langsamer sind, da das Array in einem Objekt eingekapselt ist. Eine Instanz, in der ein dynamisches Array je nach Implementierung dramatisch verlangsamt werden kann, ist, wenn die Größe des Arrays geändert werden muss. Dies kann das Kopieren des aktuellen Arrays in ein neues Array beinhalten, das der neuen gewünschten Größe zugeordnet wurde, was zu einem vorübergehenden Leistungsverschlechterungen führt. Das gleiche Problem kann beim Hinzufügen oder Entfernen eines Elements aus der Mitte der Liste auftreten, wodurch alle folgenden Elemente an einen neuen Ort verschoben werden müssen.

ANDERE SPRACHEN

War dieser Artikel hilfreich? Danke für die Rückmeldung Danke für die Rückmeldung

Wie können wir helfen? Wie können wir helfen?