Mis on massiiv?
Massiiv on andmestruktuur, mida kasutatakse sama andmetüübi elementide salvestamiseks. Elemendid järjestatakse järjestikku, kusjuures esimene element on indeksis 0 ja viimane element indeksis n-1, kus n on massiivi elementide koguarv.
Selles õpetuses saate teada:
- Mis on massiiv?
- Massiivi deklareerimine ja initsialiseerimine
- Fikseeritud suurusega massiivid
- Dünaamilised massiivid
- Massiivi sisu otsimine
- Massiivile uute elementide lisamine
- Massiivi kustutamine
- Jagatud funktsioon
- Funktsioon Liitumine
Massiivi deklareerimine ja initsialiseerimine
VB.NET-is deklareeritakse massiivid käsu Dim abil. Näiteks:
Dim myData() As Integer
Eespool toodud näites oleme määratlenud massiivi nimega myData ja see peaks sisaldama täisarvu andmetüübi elemente. Järgmine näide näitab, kuidas saame massiivi deklareerida stringielementide hoidmiseks:
Dim myData(10) As String
Oleme määranud massiivi nimega myData 10 stringi hoidmiseks.
Massiive saame initsialiseerida nende deklareerimise ajal. Näiteks:
Dim myData() As Integer = {11, 12, 22, 7, 47, 32}
Oleme deklareerinud massiivi myData ja lisanud sellele 6 täisarvulist elementi. Seda saab teha ka stringide puhul:
Dim students() As String = {"John", "Alice", "Antony", "Gloria", "jayden"}
Oleme loonud õpilaste nimelise massiivi ja lisanud sellele 5 nime.
Fikseeritud suurusega massiivid
Fikseeritud suurusega massiivi mahub kindel arv elemente. See tähendab, et peate määratlema elementide arvu, mida see määratluse ajal hoiab. Oletame, et vajate massiivi ainult 3 õpilase nime hoidmiseks. Massiivi saate määratleda ja lähtestada järgmiselt:
Dim students(0 to 2) As Stringstudents(0) = "John"students (1) = "Alice"students (2) = "Antony"
Alustasime stringide massiivi deklareerimisega õpilasteks. 0 kuni 2 deklareerib, et massiiv salvestab elemendid indeksist 0 kuni indeksini 2, mis tähendab, et meil on kokku 3 elementi.
Elementide lisamiseks massiivile oleme kasutanud massiivi nime ja määranud indeksi, kuhu element salvestatakse. Näiteks nimi John salvestatakse massiivi indeksisse 0, mis tähendab, et see moodustab massiivi esimese elemendi. Antony saab massiivi viimaseks elemendiks.
Dünaamilised massiivid
See on massiiv, kuhu mahub suvaline arv elemente. Massiivi suurus võib igal ajal kasvada. See tähendab, et saate massiivi lisada uusi elemente igal ajal, kui soovime. Selle näitamiseks määratleme kõigepealt täisarvude massiiv:
Dim nums() As Integer
Oleme määranud täisarvu massiivi nimega nums. Nüüd peate massiivile lisama kaks elementi, jättes samal ajal ruumi selle suuruse muutmiseks. ReDimi lauset peate kasutama järgmiselt:
ReDim nums(1)nums(0) = 12nums(1) = 23
Meie massiivi indeksites 0 ja 1 on nüüd kaks elementi. Peame sellele indeksis 3 lisama kolmanda elemendi, säilitades samal ajal juba olemasolevad kaks elementi. Saame seda teha järgmiselt:
ReDim Preserve nums(2)nums(2) = 35
Massiivil on nüüd kolm elementi.
Massiivi sisu otsimine
Allalaadimine tähendab juurdepääsu massiivi elementidele. Massiivielemendile juurdepääsemiseks kasutame selle indeksit. Näitagem seda näite abil.
1. samm. Alustage uue konsoolirakenduse loomisega.
Samm 2) Lisage rakendusele järgmine kood:
Module Module1Sub Main()Dim students(0 to 2) As Stringstudents(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 SubEnd Module
Samm 3) Käivitage kood, klõpsates tööriistaribal nuppu Start. Saate järgmise akna:
Oleme kasutanud järgmist koodi:
Koodi selgitus:
- Mooduli nimega moodul1 loomine.
- Põhiprotseduuri loomine.
- Stringielementide salvestamiseks õpilaste nimelise massiivi loomine. Massiiv salvestab elemendid indeksist 0 kuni indeksini 2, mis tähendab, et sellel on kokku 3 elementi.
- Massiivi esimese elemendina nime John lisamine, st indeksisse 0 salvestatud John.
- Nime Alice lisamine massiivi teiseks elemendiks, st indeksisse 1 salvestatud Alice.
- Nime Antony lisamine massiivi kolmanda elemendina, st Antony, mis on salvestatud indeksisse 2.
- Osa teksti ja massiivi õpilaste indeksis 0 salvestatud elemendi printimine konsoolile. Õpilased (0) aitavad meil pääseda õpilaste nimega massiivi indeksis 0 olevale elemendile juurde.
- Kontrolile massiiviõpilaste 1. indeksisse salvestatud teksti ja elemendi printimine. Õpilased (1) aitavad meil pääseda ligi massi nimega õpilaste indeksis 1 olevale elemendile.
- Kontrolile massiiviõpilaste 2. indeksisse salvestatud teksti ja elemendi printimine. Õpilased (2) aitavad meil juurdepääsu õpilaste nimega massiivi indeksis 2 olevale elemendile.
- Konsooliakna ootamine või kasutaja sulgemine selle peatamiseks.
- Alamenetluse lõpp.
- Mooduli lõpp.
Massiivile uute elementide lisamine
See juhtub ainult siis, kui teil on dünaamiline massiiv. Kui olete deklareerinud kindla suurusega massiivi ja see on täis massiivi elemente, ei saa te sinna uusi elemente lisada. Järgmine näide näitab, kuidas dünaamilisse massiivi lisada uusi elemente:
1. samm. Alustage uue konsoolirakenduse loomisega.
Samm 2) Lisage rakendusele järgmine kood:
Module Module1Sub Main()Dim nums() As IntegerReDim nums(1)nums(0) = 12nums(1) = 23For x = 0 To nums.Length - 1Console.WriteLine("Initial array element: {0}", nums(x))NextReDim Preserve nums(2)nums(2) = 35For x = 0 To nums.Length - 1Console.WriteLine("Final array element: {0}", nums(x))NextConsole.ReadKey()End SubEnd Module
Samm 3) Koodi käivitamiseks klõpsake tööriistaribal nuppu Start. Peaksite saama järgmise akna:
Oleme kasutanud järgmist koodi:
Koodi selgitus:
- Mooduli nimega moodul1 loomine.
- Põhiprotseduuri loomine.
- Massiivi loomine nimega täisarvude hoidmiseks.
- Täpsustades, et ülaltoodud massiiv salvestab kaks elementi, see tähendab indeksis 0 ja 1, jättes samas ruumi suuruse muutmiseks.
- Elemendi 12 lisamine massiivi summade indeksisse 0.
- Elemendi 23 lisamine massiivi summade indeksisse 1.
- Kasutades for-loopi muutuja x loomiseks, mis aitab meil massiivi nummide esimestest kuni viimaste elementideni korduda. Pange tähele, et massiivil on nüüd kaks elementi, 12 ja 23.
- Osa teksti ja massiivi elementide printimine konsoolile.
- For for silmus ja koodi järgmisele osale hüppamine.
- Muutke massiivi summade suurust, et võimaldada elemente indeksites 0 kuni 2. See saab nüüd salvestada 3, mitte 2. elementi. Märksõna Säilita aitab meil säilitada massiivi praeguseid elemente, see tähendab 12 ja 23.
- Elemendi 35 lisamine massiivi indeksile 2. Massiivil on nüüd kolm elementi, 12, 23 ja 35.
- Kasutades for-loopi muutuja x loomiseks, mis aitab meil massiivi nummide esimestest kuni viimaste elementideni korduda. Pange tähele, et massiivil on nüüd kolm elementi, 12, 23 ja 35.
- Osa teksti ja massiivi elementide printimine konsoolile.
- For for silmus ja koodi järgmisele osale hüppamine.
- Peatage konsooliaken ootamas, kuni kasutaja selle sulgemiseks meetmeid võtab.
- Alamenetluse lõpp.
- Mooduli lõpp.
Massiivi kustutamine
Pärast massi lõpetamist on soovitatav massiiv kustutada, enamasti siis, kui tegemist on dünaamilise massiiviga. See aitab teil mäluruumi vabastada.
Massiivi kustutamiseks peate lihtsalt helistama käsku Kustuta, millele järgneb massiivi nimi. Näiteks:
Dim nums(1) As Integernums(0) = 12nums(1) = 23Erase nums
Oleme kuulutanud täisarvude massiivi nimega nums ja lisanud sellele kaks elementi. Avaldus Kustuta nums kustutab massiivi.
Jagatud funktsioon
Visual Basicu .NET-i pakutav jagamisfunktsioon aitab meil stringi osadeks jagada ja massiivis hoida. Järgmine näide näitab selle funktsiooni kasutamist:
1. samm. Looge uus konsoolirakendus.
Samm 2) Lisage rakendusele järgmine kood:
Module Module1Sub Main()Dim myarray() As StringDim guru99 As StringDim x As Integerguru99 = "Welcome, to, Guru99"myarray = Split(guru99, ", ")For x = LBound(myarray) To UBound(myarray)Console.WriteLine(myarray(x))NextConsole.ReadKey()End SubEnd Module
Samm 3) Käivitage kood, klõpsates tööriistaribal nuppu Start. Peaksite saama järgmise akna:
Oleme kasutanud järgmist koodi:
Koodi selgitus:
- Mooduli nimega moodul1 loomine.
- Põhiprotseduuri alustamine.
- Massiivi loomine nimega myarray stringi väärtuste hoidmiseks.
- Stringi muutuja nimega guru99 loomine.
- X täisarvulise muutuja loomine.
- Stringi määramine muutujale guru99.
- Eelpool oleva stringi jagamine osadeks ja nende paigutamine massiivi nimega myarray. "," (Koma) on eraldaja, seega jagamisfunktsioon kasutab seda stringi erinevate osade lõpu tähistamiseks.
- Kasutades muutuja x iteratsiooni läbi massiivi nimega myarray. LBound ja UBound määravad vastavalt massiivi alumise ja ülemise piiri.
- Massiivi nimega myarray väärtuste printimine konsoolile.
- For silmus ja
Funktsioon Liitumine
Liitumisfunktsioon aitab meil ühendada mitu massiivi üheks stringiks. Järgmine näide näitab seda:
1. samm. Alustage uue konsoolirakenduse loomisega.
Samm 2) Lisage rakendusele järgmine kood:
Module Module1Sub Main()Dim students(0 To 2) As Stringstudents(0) = "John"students(1) = "Alice"students(2) = "Antony"Dim classmates As Stringclassmates = Join(students, ", ")Console.WriteLine(classmates)Console.ReadKey()End SubEnd Module
Samm 3) Käivitage kood, klõpsates tööriistaribal nuppu Start:
Oleme kasutanud järgmist koodi:
Koodi selgitus:
- Mooduli nimega moodul1 loomine.
- Põhiprotseduuri loomine.
- Massiivi loomine õpilaste jaoks, et hoida 3 stringi väärtust.
- Nime John lisamine massiivi indeksile 0.
- Nime Alice lisamine massiivi indeksisse 1.
- Nime Antony lisamine massiivi indeksisse 2.
- Stringi andmetüübi muutuja nimega klassikaaslased.
- Massiivüliõpilaste kõigi elementide ühendamine ja eraldamine, kasutades (koma). Selle toimingu tulemus määratakse muutuvatele klassikaaslastele.
- Klassikaaslaste muutuja sisu konsoolile printimine.
- Konsooliakna peatamine ootab, kuni kasutaja võtab selle sulgemiseks midagi ette.
- Põhiprotseduuri lõpetamine.
- Mooduli lõpetamine.
Kokkuvõte
- Massiive kasutatakse samasse andmetüüpi kuuluvate andmeelementide salvestamiseks.
- Dünaamiline massiiv võimaldab kasutajal selle suurust muuta, lisades sellele rohkem elemente. Olemasolevale massiivile elementide lisamiseks kasutate käsklust ReDim
- Fikseeritud suurusega massiivi suurust ei saa muuta.
- Massiivielemendid on järjestatud indeksite abil, kusjuures esimene element on indeksis 0 ja viimane element indeksis n-1, kus n on massiivielementide koguarv.
- Massiive saab kustutada funktsiooni Kustuta abil
- Stringi massiivi jagamiseks või ühendamiseks võite kasutada funktsioone split ja join