Länge eines Arrays nachträglich ändern

Hallo,

ich konnte in der Dokumentation nichts darüber finden, ob es möglich ist, die Länge von Arrays nach der Deklaration noch zu ändern. Geht das?

ArrayLists könnte ich natürlich auch verwenden, aber die sind, wie ich an einem einfachen Beispiel mit dem Typ double gemessen habe, etwa 17x langsamer (unter möglichst gleichen Bedingungen, also vorheriger Angabe der Capacity) beim Lesen und Schreiben.

Danke im Voraus!
Gruß
Alexander

Hallo

In vb.net kannst du wie in vb6 redim preserve verwenden. in c# gibt es keine analogen keywords.

auf verschiedene seiten wird jedoch die verwendung von redim preserve nicht empfohlen. (intern wird nämlich ein neues array erstellt und den ganzen inhalt kopiert) stattessen wird arraylist empfohlen…

http://www.dotnet247.com/247reference/msgs/25/128898…

17 x langsamer, muss nicht heissen dass es langsam ist… man muss immer noch den context sehen…

gruss
giuseppe

Schau Dir mal den Namespace System.Collections an. Sicher findest Du da eine viel besser geeignete Datenstruktur als ein Array.

Chris

Hallo,

danke für die Hinweise. Ich habe mir mit CollectionBase selbst eine Auflistungsklasse gebastelt, aber sie ist etwa genau so langsam wie die ArrayList.

Für meine Anwendung muss ich jedoch sehr auf Geschwindigkeit achten, daher werde ich auf die normalen Arrays zurückgreifen müssen.

Danke und Gruß
Alexander

Schau Dir mal den Namespace System.Collections an. Sicher
findest Du da eine viel besser geeignete Datenstruktur als ein
Array.

Chris

Für meine Anwendung muss ich jedoch sehr auf Geschwindigkeit
achten, daher werde ich auf die normalen Arrays zurückgreifen
müssen.

was macht den die anwendung, dass du so viel „saft“ brauchst?