VB.Net-arrays: String, dynamisch met VOORBEELDEN

Wat is een matrix?

Een array is een gegevensstructuur die wordt gebruikt om elementen van hetzelfde gegevenstype op te slaan. De elementen zijn opeenvolgend geordend, waarbij het eerste element zich op index 0 bevindt en het laatste element op index n-1, waarbij n het totale aantal elementen in de array is.

Een array declareren en initialiseren

In VB.NET, worden arrays gedeclareerd met behulp van de Dim-instructie. Bijvoorbeeld:

Dim myData() As Integer

In het bovenstaande voorbeeld hebben we een array gedefinieerd met de naam myData, en deze zou elementen van het gegevenstype integer moeten bevatten. De volgendewing voorbeeld laat zien hoe we een array kunnen declareren om stringelementen te bevatten:

Dim myData(10) As String

We hebben een array met de naam myData gedefinieerd die 10 strings kan bevatten.

We kunnen arrays initialiseren op het moment dat ze worden gedeclareerd. Bijvoorbeeld:

Dim myData() As Integer = {11, 12, 22, 7, 47, 32}

We hebben de array myData gedeclareerd en er 6 integer-elementen aan toegevoegd. Dit kan ook worden gedaan voor strings:

Dim students() As String = {"John", "Alice", "Antony", "Gloria", "jayden"}

We hebben een array met de naam studenten gemaakt en er 5 namen aan toegevoegd.

Arrays met een vast formaat

Een array met een vaste grootte bevat een vast aantal elementen. Dit betekent dat u het aantal elementen moet definiëren dat het tijdens de definitie zal bevatten. Stel dat je een array nodig hebt die slechts drie leerlingnamen kan bevatten. U kunt de array als volgt definiëren en initialiseren:

Dim students(0 to 2) As String 
      
students(0) = "John"
students (1) = "Alice"
students (2) = "Antony"

We zijn begonnen met het declareren van een stringarray met de naam studenten. De 0 tot 2 declares dat de array elementen van index 0 tot index 2 zal opslaan, wat betekent dat we in totaal 3 elementen zullen hebben.

Om elementen aan de array toe te voegen, hebben we de arraynaam gebruikt en de index gespecificeerd waarin het element zal worden opgeslagen. De naam John wordt bijvoorbeeld opgeslagen op index 0 van de array, wat betekent dat deze het eerste element van de array zal vormen. Antony zal het laatste element van de array zijn.

Dynamische arrays

Dit is een array die een willekeurig aantal elementen kan bevatten. De arraygrootte kan op elk moment groeien. Dit betekent dat u op elk gewenst moment nieuwe elementen aan de array kunt toevoegen. Om dit aan te tonen, definiëren we eerst een array van gehele getallen:

Dim nums() As Integer

We hebben een array met gehele getallen gedefinieerd met de naam nums. U moet nu twee elementen aan de array toevoegen, terwijl u ruimte geeft om de grootte ervan te wijzigen. U moet de ReDim-instructie als volgt gebruiken:

ReDim nums(1)
nums(0) = 12
nums(1) = 23

Onze array heeft nu twee elementen in de indexen 0 en 1. We moeten er een derde element aan toevoegen op index 3, terwijl we de twee elementen die het al heeft behouden. We kunnen het als volgt doen:

ReDim Preserve nums(2)
nums(2) = 35

De array heeft nu drie elementen.

De inhoud van een array ophalen

Ophalen betekent toegang verkrijgen tot de array-elementen. Om toegang te krijgen tot een array-element gebruiken we de index ervan. Laten we dit aantonen aan de hand van een voorbeeld.

Stap 1) Begin met het maken van een nieuwe consoletoepassing.

Stap 2) Voeg de volgende toewing code voor de applicatie:

Module Module1
    Sub Main()

       Dim students(0 to 2) As String 

        students(0) = "John"

        students(1) = "Alice"

        students(2) = "Antony"

        Console.WriteLine("First student is {0} ", students(0))

        Console.WriteLine("Second student is {0} ", students(1))

        Console.WriteLine("Third student is {0} ", students(2))


        Console.ReadKey()

    End Sub

End Module

Stap 3) Voer de code uit door op de Start-knop in de werkbalk te klikken. Je krijgt het vervolgwing venster:

De inhoud van een array ophalen

Wij hebben gebruik gemaakt van de volgendewing code:

De inhoud van een array ophalen

Verklaring van code:

  1. Een module maken met de naam Module1.
  2. Het creëren van de hoofdsubprocedure.
  3. Een array maken met de naam studenten om tekenreekselementen op te slaan. De array slaat elementen op van index 0 tot index 2, wat betekent dat er in totaal 3 elementen zijn.
  4. De naam John toevoegen als het eerste element van de array, dat wil zeggen: John opgeslagen op index 0.
  5. De naam Alice toevoegen als het tweede element van de array, dat wil zeggen Alice opgeslagen in index 1.
  6. De naam Antony wordt toegevoegd als het derde element van de array, dat wil zeggen Antony opgeslagen in index 2.
  7. Het afdrukken van wat tekst en het element dat is opgeslagen op index 0 van de array-studenten op de console. De studenten(0) helpt ons toegang te krijgen tot het element op index 0 van de array met de naam studenten.
  8. Het afdrukken van wat tekst en het element dat is opgeslagen op index 1 van de array-studenten op de console. De studenten(1) helpt ons toegang te krijgen tot het element op index 1 van de array met de naam studenten.
  9. Het afdrukken van wat tekst en het element dat is opgeslagen op index 2 van de array-studenten op de console. De studenten(2) helpt ons toegang te krijgen tot het element op index 2 van de array met de naam studenten.
  10. Het consolevenster pauzeren, wachtend of de gebruiker actie onderneemt om het te sluiten.
  11. Einde van de subprocedure.
  12. Einde van de module.

Nieuwe elementen aan een array toevoegen

Dit gebeurt alleen als je een dynamische array hebt. Als u een dimensionale array met een vaste grootte hebt gedeclareerd en deze vol array-elementen zit, kunt u er geen nieuwe elementen aan toevoegen. De volgendewing voorbeeld laat zien hoe u nieuwe elementen aan een dynamische array kunt toevoegen:

Stap 1) Begin met het maken van een nieuwe consoletoepassing.

Stap 2) Voeg de volgende toewing code voor de applicatie:

Module Module1
    Sub Main()

        Dim nums() As Integer

        ReDim nums(1)
        nums(0) = 12
        nums(1) = 23

        For x = 0 To nums.Length - 1
            Console.WriteLine("Initial array element: {0}", nums(x))
        Next

        ReDim Preserve nums(2)
        nums(2) = 35

        For x = 0 To nums.Length - 1
            Console.WriteLine("Final array element: {0}", nums(x))
        Next

        Console.ReadKey()
    End Sub

End Module

Stap 3) Klik op de knop Start in de werkbalk om de code uit te voeren. Je zou het volgende moeten krijgenwing venster:

Nieuwe elementen aan een array toevoegen

Wij hebben gebruik gemaakt van de volgendewing code:

Nieuwe elementen aan een array toevoegen

Verklaring van code:

  1. Een module maken met de naam Module1.
  2. Het creëren van de hoofdsubprocedure.
  3. Een array maken met de naam nums om gehele waarden te bevatten.
  4. Specificeer dat de bovenstaande array twee elementen opslaat, dat wil zeggen op index 0 en 1 terwijl allowing ruimte voor formaatwijziging.
  5. Het element 12 toevoegen aan de index 0 van array nums.
  6. Het element 23 toevoegen aan de index 1 van array nums.
  7. Door een for-lus te gebruiken om een ​​variabele x te maken, kunnen we van de eerste naar de laatste elementen van de array nums itereren. Merk op dat de array nu twee elementen heeft, 12 en 23.
  8. Een stukje tekst en de elementen van de array op de console afdrukken.
  9. De for-lus beëindigen en naar het volgende deel van de code springen.
  10. Wijzig het formaat van de array nums om elementen met indexen 0 tot 2 toe te staan. Er kunnen nu 3 elementen worden opgeslagen in plaats van 2. Het trefwoord Preserve helpt ons de huidige elementen van de array te behouden, dat wil zeggen 12 en 23.
  11. Het element 35 wordt toegevoegd aan index 2 van de array. De array heeft nu drie elementen, 12, 23 en 35.
  12. Door een for-lus te gebruiken om een ​​variabele x te maken, kunnen we van de eerste naar de laatste elementen van de array nums itereren. Merk op dat de array nu drie elementen heeft, 12, 23 en 35.
  13. Een stukje tekst en de elementen van de array op de console afdrukken.
  14. De for-lus beëindigen en naar het volgende deel van de code springen.
  15. Pauzeer het consolevenster en wacht tot de gebruiker actie onderneemt om het te sluiten.
  16. Einde van de subprocedure.
  17. Einde van de module.

Een array verwijderen

Het wordt aanbevolen dat u uw array wist nadat u er klaar mee bent, vooral als u met een dynamische array te maken heeft. Dit zal u helpen wat geheugenruimte vrij te maken.

Om een ​​array te verwijderen, hoeft u alleen maar de instructie Erase aan te roepen, gevolgd door de naam van de array. Bijvoorbeeld:

Dim nums(1) As Integer
        nums(0) = 12
        nums(1) = 23
Erase nums

We hebben een array van gehele getallen met de naam nums gedeclareerd en er twee elementen aan toegevoegd. De instructie Erase nums wist de array.

De splitsfunctie

De splitsfunctie van Visual Basic .NET helpt ons een string in delen te splitsen en deze in een array te houden. De volgendewing voorbeeld laat zien hoe u deze functie kunt gebruiken:

Stap 1) Maak een nieuwe consoletoepassing.

Stap 2) Voeg de volgende toewing code voor de applicatie:

Module Module1
    Sub Main()

        Dim myarray() As String
        Dim guru99 As String
        Dim x As Integer

        guru99 = "Welcome, to, Guru99"
        myarray = Split(guru99, ", ")

        For x = LBound(myarray) To UBound(myarray)

            Console.WriteLine(myarray(x))

        Next

        Console.ReadKey()
    End Sub

End Module

Stap 3) Voer de code uit door op de Start-knop in de werkbalk te klikken. Je zou het volgende moeten krijgenwing venster:

De splitsfunctie

Wij hebben gebruik gemaakt van de volgendewing code:

De splitsfunctie

Verklaring van code:

  1. Een module maken met de naam Module1.
  2. Het starten van de hoofdsubprocedure.
  3. Een array maken met de naam myarray om tekenreekswaarden op te slaan.
  4. Een stringvariabele maken met de naam guru99.
  5. Een integer-variabele maken met de naam x.
  6. Een string toewijzen aan de variabele guru99.
  7. De bovenstaande String in delen splitsen en deze in de array met de naam myarray plaatsen. De “,” (komma) is het scheidingsteken, daarom zal de splitsfunctie dit gebruiken om het einde van de verschillende delen van de String te markeren.
  8. Gebruik de variabele x om de array met de naam myarray te doorlopen. De LBound en UBound specificeren respectievelijk de ondergrenzen en de bovengrenzen van de array.
  9. Het afdrukken van de waarden van de array met de naam myarray op de console.
  10. De for-lus beëindigen en

De join-functie

De join-functie helpt ons meerdere arrays samen te voegen tot één string. De volgendewing voorbeeld laat dit zien:

Stap 1) Begin met het maken van een nieuwe consoletoepassing.

Stap 2) Voeg de volgende toewing code voor de applicatie:

Module Module1
    Sub Main()

        Dim students(0 To 2) As String

        students(0) = "John"

        students(1) = "Alice"

        students(2) = "Antony"

        Dim classmates As String


        classmates = Join(students, ", ")

        Console.WriteLine(classmates)

        Console.ReadKey()
    End Sub

End Module

Stap 3) Voer de code uit door op de Start-knop op de werkbalk te klikken:

De join-functie

Wij hebben gebruik gemaakt van de volgendewing code:

De join-functie

Verklaring van code:

  1. Een module maken met de naam Module1.
  2. Het creëren van de hoofdsubprocedure.
  3. Een array maken met de naam studenten om 3 tekenreekswaarden te bevatten.
  4. De naam John toevoegen aan index 0 van de array.
  5. De naam Alice toevoegen aan index 1 van de array.
  6. De naam Antony toevoegen aan index 2 van de array.
  7. Het definiëren van een variabele met de naam klasgenoten van het stringgegevenstype.
  8. Alle elementen van de array-studenten samenvoegen en scheiden met een , (komma). Het resultaat van deze operatie wordt toegewezen aan de variabele klasgenoten.
  9. Afdrukken van de inhoud van de klasgenotenvariabele op de console.
  10. Het consolevenster pauzeren, wachtend tot de gebruiker actie onderneemt om het te sluiten.
  11. Beëindiging van de hoofdsubprocedure.
  12. Beëindigen van de module.

Samengevat

  • Arrays worden gebruikt voor het opslaan van gegevenselementen die daarbij horen data type.
  • Met een dynamische array kan de gebruiker het formaat ervan wijzigen door er meer elementen aan toe te voegen. Je gebruikt het commando ReDim voor het toevoegen van elementen aan een bestaande array
  • De grootte van een array met een vaste grootte kan niet worden gewijzigd.
  • De array-elementen zijn geordend met behulp van indexen, waarbij het eerste element zich op index 0 bevindt en het laatste element op index n-1, waarbij n het totale aantal array-elementen is.
  • Arrays kunnen worden verwijderd met de functie Erase
  • U kunt de functies splitsen en samenvoegen gebruiken om respectievelijk een stringarray te splitsen of samen te voegen