Was ist ein dynamisches Array?
Ein dynamisches Array ist eine Datenstruktur, die in der Computerprogrammierung verwendet wird, die mehrere Computerobjekte als einzelne Gruppe enthält und nach dem Willen die Größe der unterschiedlichen Objekte angelegt werden kann. Die Gruppe wird in einem einzigen zusammenhängenden Speicherblock gehalten, sodass der Zugriff auf Elemente effizient und schnell ist. Dynamische Arrays werden auch Vektoren oder Listen bezeichnet, abhängig von der Computersprache, in der sie verwendet werden. Trotz dieser Namen ist eine bestimmte Liste oder ein bestimmter Vektor möglicherweise kein dynamisches Array, da Listen und Vektoren unterschiedlich als Arrays und voneinander implementiert werden können. Auf das Array, das diese Klasse unterstützt, kann von Iteratoren oder Indizes zugegriffen werden. Seine Fähigkeit zur Änderung von Bedarf ist ein großer Vorteil, kann aber Programmierer in ein falsches Gefühl der Sicherheit locken, da es nicht so robust ist, wie es scheint. Das dynamische Array, das einen Vektor unterstütztCESS -Anfragen sind gültig. Wie statische Arrays können dynamische Arrays Grenzenprüfungs- und Speicherbeschäftigungsprobleme haben, wenn ein Programm versucht, auf Speicher zuzugreifen, der nicht für sie zugewiesen wurde.
Java enthält drei verschiedene dynamische Array -Klassen: Vektor, ArrayList und CopyonWriteArrayList. Elemente im Array werden nur mit Indizes zugegriffen, und der Versuch, auf Indizes außerhalb des Arrays zuzugreifen, verursacht in der Regel keine Probleme mit Speicherbeschäftigung. Die Java -Vektor -Klasse entspricht ungefähr der C ++ - Vektorklasse und wird nicht synchronisiert, um den Zugriff durch mehrere Threads zu aktivieren. ArrayList und CopyonWriteArrayList sind dagegen beide thread-sicher. CopyonWriteArrayList ist die arbeitsintensivste Klasse, da das dynamische Array jedes Mal, wenn ein neuer Wert an das Array geschrieben wird
dynamische Arrays werden im Wesentlichen unabhängig von der Comput im Wesentlichen auf die gleiche Weise implementiertER -Sprache beteiligt, aber abhängig von einer bestimmten Sprache kann es andere Funktionen geben, die darauf aufbauen. Wie statische Arrays beschränken dynamische Arrays die Art des Objekts, der in ihnen gespeichert werden kann, nicht, solange sie alle gleiche Objekttypen sind. Ein Programmierer muss niemals direkt auf ein dynamisches Array zugreifen. Es kann immer über eine Klasse erfolgen, die das Array für die einfache Verwendung umhüllt. Die ordnungsgemäße Verwendung dieser Arrays kann einem Programmierer mit der Datenorganisation im Code und der Erstellung eines verständlichen Codes helfen, der sich für eine einfache Wartung verleiht.