vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
SEPA-Dateien erstellen inkl. IBAN-, BLZ-/Kontonummernprüfung  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Anfängerfehler Array 
Autor: Maas
Datum: 26.02.10 14:46

Ein Array ist ein starres Konstrukt. Die Größe des Array wird normalerweise beim Initialisieren bestimmt.


        Dim arr() As String
        Debug.WriteLine(arr.Length)
Dieses Array ist noch nicht initialisiert, da keine Größe bestimmt wurde.
Deshalb sollte auch die Warnung erscheinen, dass es zu einer Nullverweisausnahme kommen kann.


        Dim arr(3) As String
        Dim arr(3) As MyClass
        Dim arr(-1) As String
Dieses Array ist initialisiert und hat eine Länge von 4, da Indizes in VB.NET immer 0-basiert sind. Es wird beim Initialisieren sozusagen der letzte Index angegeben, nicht die Länge. Deshalb hat eine Initialisierung mit -1 eine Länge von 0 zur Folge.
Die Strings sind hier noch alle leer. Bei nicht-primitiven Typen (keine Strings, Integer, etc. sondern Klassen), wären die einzelnen Objekte im Array noch Nothing.


        Dim arr() As String = New String() {"Eins", "Zwei", "Drei"}
Hier bekommt das Array beim Initialisieren gleich die Werte mit und somit auch die Länge. Es ist hier nicht möglich eine andere Länge zu bestimmen.


Dann kann man noch mit ReDim die Größe eines Arrays verändern. Aber wenn es soweit ist, dass man eine variable Auflistung benötigt, sollte man eher eine List(Of T) benutzen.
Ein Array hat seine Werte im Speicher immer in Reihenfolge. Das bedeutet, dass bei einer Veränderung der Größe (ReDim) das komplette Array mit neuem Wert neu geschrieben werden muss. Eine List(Of T) hat seine Werte nicht in Reiehnfolge, sondern über den gesamten Speicher verteilt, wo es gerade passt. Wenn hier ein Item hinzugefügt wird, wird nur der eine Item in den Speicher neu geschrieben.

Maas

Beitrag wurde zuletzt am 26.02.10 um 14:48:27 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Anfängerfehler Array1.666Bismosa26.02.10 13:08
Re: Anfängerfehler Array1.069ModeratorRalfE26.02.10 13:12
Re: Anfängerfehler Array1.082Bismosa26.02.10 14:23
Re: Anfängerfehler Array1.114Maas26.02.10 14:46
Re: Anfängerfehler Array1.075Bismosa26.02.10 18:42
Re: Anfängerfehler Array1.053Maas26.02.10 18:53
Re: Anfängerfehler Array1.057Bismosa26.02.10 21:35
Re: Anfängerfehler Array1.106Maas27.02.10 14:36
Re: Anfängerfehler Array1.049Bismosa27.02.10 16:06
Re: Anfängerfehler Array1.034Maas27.02.10 18:34
Re: Anfängerfehler Array1.052Bismosa27.02.10 20:21
Re: Anfängerfehler Array1.178ModeratorRalfE26.02.10 15:48
Re: Anfängerfehler Array1.037Bismosa26.02.10 18:43
Re: Anfängerfehler Array1.182Maas26.02.10 18:55

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel