DevTrain Startseite Visual Studio 1 Magazin  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren


   Autor: Andreas Rauch Artikel Drucken
        
Neuerungen bei den Arrays

Bei VB.NET gibt es bei den Arrays einige Neuerungen. So ist die untere Feldgrenze z. B. immer 0, den Option Base-Befehl sowie das Schlüsselwort To gibt es nicht mehr. Der folgende Befehl definiert also einen Array mit 10 Elementen, da das unterste Element den Index 0 besitzt:

Dim aZahlen(9) As Integer

Man kann die Größe und eventuelle Startwerte gleich mitdeklarieren:

Dim aZahlen() As Integer = {11,22,33,44}

Die Initialisierungswerte werden dabei in geschweifte Klammern geschrieben. Es ist auch möglich, Klassen oder Strukturen mit New zu initialisieren.

In VB 6.0 konnte man einen Array mit einer festen Größe nicht mehr ändern. Dies geht jetzt durch den ReDim-Befehl.

Dim aZahlen(9) As Integer
ReDim aZahlen(11)

Aber Achtung! Dabei werden die vorherigen Werte gelöscht, fügt man nicht das Schlüsselwort Preserve hinzu.

Dim aZahlen(9) As Integer
ReDim Preserve aZahlen(11)


Für die Deklaration multi-dimensionaler Arrays gilt:
ReDim kann zwar die Anzahl der Elemente der einzelnen Dimensionen ändern, aber nicht die Anzahl der Dimensionen selbst. Außerdem kann ReDim Preserve nur die letzte Dimension ändern.

Die wichtigste Neuerung ist aber: Arrays basieren auf der Array-Klasse und besitzen dadurch einige interessante Zusatzfunktionen, wie z.B. die Sort-Methode.

Dazu ein Beispiel: Aus vier Teams in einem Array werden Begegnungen in einem Array namens aSpiele abgelegt und je nach Wunsch sortiert oder unsortiert ausgegeben.

Imports System.Console
Public Class Array
   Private Shared aTeams() As String = {"Brasilien", "Deutschland", _
  
"Italien", "Irland"}
   Private Shared aSpiele() As String
   Shared Sub main()
      Dim i, j, sSpielNr As Short
      Write("Sortierte Ausgabe (J/N)?")
      Dim stEingabe As String = ReadLine()
      Dim SortModus As Boolean
      SortModus = stEingabe.Length = 1 AndAlso stEingabe.ToUpper = "J"
      For i = 0 To aTeams.GetLength(0) - 1
         For j = i + 1 To aTeams.GetLength(0) - 1
            ReDim Preserve aSpiele(sSpielNr)
            aSpiele(sSpielNr) = aTeams(i) & ":" & aTeams(j)
            sSpielNr += 1
         Next j
      Next i
      If SortModus = True Then System.Array.Sort(aSpiele)
      For i = 0 To sSpielNr - 1
      WriteLine("Begegnung Nr. {0}: {1}", i + 1, aSpiele(i))
      Next
   End Sub
End Class

 

 


DevTrain Camp - Schneller zum .NET 3.5 Developer
 
Verwandte Artikel      Verlinkte Dokumente
    Keine verknüpften Dokumente
    Keine Links vorhanden

  Erfasst am: 16.04.2003
  Gültig bis: 15.07.2003
2 Ratings
Bewertung: 100,0%
schlecht    sehr gut  

 
© Copyright 2007 ppedv AG