VB.Net Arrays: String, Dynamic cu EXEMPLE

Ce este un Array?

O matrice este o structură de date utilizată pentru a stoca elemente de același tip de date. Elementele sunt ordonate secvențial, primul element fiind la indicele 0 și ultimul element la indicele n-1, unde n este numărul total de elemente din matrice.

Cum să declarați și să inițializați o matrice

In VB.NET, tablourile sunt declarate folosind instrucțiunea Dim. De exemplu:

Dim myData() As Integer

În exemplul de mai sus, am definit o matrice numită myData și ar trebui să conțină elemente de tipul de date întreg. Următorul exemplu demonstrează cum putem declara o matrice care să dețină elemente șir:

Dim myData(10) As String

Am definit o matrice numită myData pentru a conține 10 șiruri.

Putem inițializa matrice în momentul declarării lor. De exemplu:

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

Am declarat matricea myData și i-am adăugat 6 elemente întregi. Acest lucru se poate face și în cazul șirurilor:

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

Am creat o matrice numită studenți și i-am adăugat 5 nume.

Matrice de dimensiuni fixe

O matrice de dimensiune fixă ​​deține un număr fix de elemente. Aceasta înseamnă că trebuie să definiți numărul de elemente pe care le va păstra în timpul definirii sale. Să presupunem că aveți nevoie de o matrice care să conțină doar 3 nume de studenți. Puteți defini și inițializa matricea după cum urmează:

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

Am început prin a declara o matrice de șiruri numită elevi. 0 la 2 declară că matricea va stoca elemente de la indexul său 0 la indexul 2, adică vom avea 3 elemente în total.

Pentru a adăuga elemente la matrice, am folosit numele matricei și am specificat indexul la care va fi stocat elementul. De exemplu, numele John va fi stocat la indexul 0 al matricei, ceea ce înseamnă că va forma primul element al matricei. Antony va fi ultimul element al matricei.

Matrice dinamice

Acesta este o matrice care poate conține orice număr de elemente. Dimensiunea matricei poate crește în orice moment. Aceasta înseamnă că puteți adăuga elemente noi la matrice oricând vrem. Pentru a demonstra acest lucru, să definim mai întâi o matrice de numere întregi:

Dim nums() As Integer

Am definit un tablou întreg numit nums. Acum trebuie să adăugați două elemente la matrice, oferind în același timp spațiu pentru redimensionarea acestuia. Trebuie să utilizați instrucțiunea ReDim după cum urmează:

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

Matricea noastră are acum două elemente în indecșii 0 și 1. Trebuie să îi adăugăm un al treilea element la indexul 3, păstrând în același timp cele două elemente pe care le are deja. O putem face după cum urmează:

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

Matricea are acum trei elemente.

Preluarea conținutului unui tablou

Recuperarea înseamnă accesarea elementelor matricei. Pentru a accesa un element de matrice, folosim indexul acestuia. Să demonstrăm acest lucru folosind un exemplu.

Pas 1) Începeți prin a crea o nouă aplicație de consolă.

Pas 2) Adăugați următorul cod la aplicație:

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

Pas 3) Rulați codul făcând clic pe butonul Start din bara de instrumente. Veți obține următoarea fereastră:

Preluarea conținutului unui tablou

Am folosit următorul cod:

Preluarea conținutului unui tablou

Explicația codului:

  1. Crearea unui modul numit Module1.
  2. Crearea sub-procedurii principale.
  3. Crearea unui tablou numit elevi pentru a stoca elemente șir. Matricea va stoca elemente de la indexul 0 la indexul 2, ceea ce înseamnă că va avea un total de 3 elemente.
  4. Adăugarea numelui John ca prim element al matricei, adică John stocat la indexul 0.
  5. Adăugarea numelui Alice ca al doilea element al matricei, adică Alice stocată la indexul 1.
  6. Adăugarea numelui Antony ca al treilea element al matricei, adică Antony stocat la indexul 2.
  7. Imprimarea unui text și a elementului stocat la indexul 0 al matricei elevi pe consolă. Studentul(0) ne ajută să accesăm elementul de la indexul 0 al matricei numite elevi.
  8. Imprimarea unui text și a elementului stocat la indexul 1 al matricei elevi pe consolă. Studentul(1) ne ajută să accesăm elementul de la indexul 1 al matricei numite elevi.
  9. Imprimarea unui text și a elementului stocat la indexul 2 al matricei elevi pe consolă. Studentul(2) ne ajută să accesăm elementul de la indexul 2 al matricei numite elevi.
  10. Întreruperea ferestrei consolei în așteptarea sau utilizatorul să ia măsuri pentru a o închide.
  11. Încheierea subprocedurii.
  12. Sfârșitul modulului.

Adăugarea de noi elemente la o matrice

Acest lucru se va întâmpla numai dacă aveți o matrice dinamică. Dacă ați declarat o matrice dimensională de dimensiune fixă ​​și este plină de elemente de matrice, nu puteți adăuga elemente noi la ea. Următorul exemplu demonstrează cum să adăugați elemente noi la o matrice dinamică:

Pas 1) Începeți prin a crea o nouă aplicație de consolă.

Pas 2) Adăugați următorul cod la aplicație:

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

Pas 3) Faceți clic pe butonul Start din bara de instrumente pentru a rula codul. Ar trebui să obțineți următoarea fereastră:

Adăugarea de noi elemente la o matrice

Am folosit următorul cod:

Adăugarea de noi elemente la o matrice

Explicația codului:

  1. Crearea unui modul numit Module1.
  2. Crearea sub-procedurii principale.
  3. Crearea unui tablou numit nums pentru a păstra valori întregi.
  4. Specificând că tabloul de mai sus va stoca două elemente, adică la indexul 0 și 1, permițând spațiu pentru redimensionare.
  5. Adăugarea elementului 12 la indexul 0 al matricei nums.
  6. Adăugarea elementului 23 la indexul 1 al matricei nums.
  7. Folosind o buclă for pentru a crea o variabilă x care să ne ajute să iterăm de la primele până la ultimele elemente ale matricei nums. Rețineți că matricea are acum două elemente, 12 și 23.
  8. Imprimarea unor text și elemente ale matricei pe consolă.
  9. Încheierea buclei for și trecerea la următoarea parte a codului.
  10. Redimensionați numerele matricei pentru a permite elemente la indecșii de la 0 la 2. Acum va putea stoca 3 elemente în loc de 2. Cuvântul cheie Preserve ne ajută să menținem elementele curente ale matricei, adică 12 și 23.
  11. Adăugarea elementului 35 la indexul 2 al tabloului. Matricea are acum trei elemente, 12, 23 și 35.
  12. Folosind o buclă for pentru a crea o variabilă x care să ne ajute să iterăm de la primele până la ultimele elemente ale matricei nums. Rețineți că matricea are acum trei elemente, 12, 23 și 35.
  13. Imprimarea unor text și elemente ale matricei pe consolă.
  14. Încheierea buclei for și trecerea la următoarea parte a codului.
  15. Întrerupeți fereastra consolei, așteptând ca utilizatorul să ia măsuri pentru a o închide.
  16. Încheierea subprocedurii.
  17. Sfârșitul modulului.

Ștergerea unei matrice

Este recomandat să ștergeți matricea după ce ați terminat cu ea, mai ales atunci când aveți de-a face cu o matrice dinamică. Acest lucru vă va ajuta să eliberați spațiu de memorie.

Pentru a șterge o matrice, trebuie doar să apelați instrucțiunea Erase urmată de numele matricei. De exemplu:

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

Am declarat o matrice de numere întregi numite nums și i-am adăugat două elemente. Declarația Erase nums va șterge matricea.

Funcția Split

Funcția de împărțire oferită de Visual Basic .NET ne ajută să împărțim un șir în părți și să le păstrăm într-o matrice. Următorul exemplu demonstrează cum se utilizează această funcție:

Pas 1) Creați o nouă aplicație de consolă.

Pas 2) Adăugați următorul cod la aplicație:

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

Pas 3) Rulați codul făcând clic pe butonul Start din bara de instrumente. Ar trebui să obțineți următoarea fereastră:

Funcția Split

Am folosit următorul cod:

Funcția Split

Explicația codului:

  1. Crearea unui modul numit Module1.
  2. Pornirea sub-procedurii principale.
  3. Crearea unei matrice numită myarray pentru a păstra valorile șirurilor.
  4. Crearea unei variabile șir numită guru99.
  5. Crearea unei variabile întregi numite x.
  6. Atribuirea unui șir variabilei guru99.
  7. Împărțirea șirului de mai sus în părți și plasarea lor în matricea numită myarray. „,” (virgulă) este delimitătorul, prin urmare funcția de împărțire îl va folosi pentru a marca sfârșitul diferitelor părți ale șirului.
  8. Folosind variabila x pentru a itera prin matricea numită myarray. LBound și UBound specifică limitele inferioare și, respectiv, limitele superioare ale matricei.
  9. Imprimarea valorilor matricei numite myarray pe consolă.
  10. Încheierea buclei for și

Funcția Join

Funcția join ne ajută să unim mai multe matrice într-un singur șir. Următorul exemplu demonstrează acest lucru:

Pas 1) Începeți prin a crea o nouă aplicație de consolă.

Pas 2) Adăugați următorul cod la aplicație:

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

Pas 3) Rulați codul făcând clic pe butonul Start din bara de instrumente:

Funcția Join

Am folosit următorul cod:

Funcția Join

Explicația codului:

  1. Crearea unui modul numit Module1.
  2. Crearea sub-procedurii principale.
  3. Crearea unui tablou numit elevi care să conțină 3 valori de șir.
  4. Adăugarea numelui John la indexul 0 al matricei.
  5. Adăugarea numelui Alice la indexul 1 al matricei.
  6. Adăugarea numelui Antony la indexul 2 al matricei.
  7. Definirea unei variabile numite colegii de clasă de tip șir de date.
  8. Unirea tuturor elementelor matricei elevi și separarea lor folosind un , (virgulă). Rezultatul acestei operații va fi atribuit variabilelor colegilor de clasă.
  9. Imprimarea conținutului variabilei colegii de clasă pe consolă.
  10. Întreruperea ferestrei consolei în așteptarea ca utilizatorul să ia măsuri pentru a o închide.
  11. Încheierea sub-procedurii principale.
  12. Încheierea modulului.

Rezumat

  • Matricele sunt folosite pentru stocarea elementelor de date care aparțin aceluiași tip de date.
  • O matrice dinamică permite utilizatorului să o redimensioneze adăugând mai multe elemente. Folosești comanda ReDim pentru adăugarea de elemente la o matrice existentă
  • Dimensiunea unei matrice de dimensiuni fixe nu poate fi modificată.
  • Elementele matricei sunt ordonate folosind indici, primul element fiind la indicele 0 și ultimul element la indicele n-1, unde n este numărul total de elemente ale matricei.
  • Matricele pot fi șterse folosind funcția Erase
  • Puteți utiliza funcțiile de împărțire și unire pentru a împărți sau, respectiv, a uni o matrice de șiruri