Mikä on taulukko?
Taulukko on tietorakenne, jota käytetään saman tietotyypin elementtien tallentamiseen. Elementit järjestetään peräkkäin siten, että ensimmäinen elementti on indeksissä 0 ja viimeinen indeksi indeksissä n-1, missä n on matriisin elementtien kokonaismäärä.
Tässä opetusohjelmassa opit:
- Mikä on taulukko?
- Taulukon ilmoittaminen ja alustaminen
- Kiinteäkokoiset taulukot
- Dynaamiset taulukot
- Taulukon sisällön hakeminen
- Uusien elementtien lisääminen taulukkoon
- Taulukon poistaminen
- Jaettu toiminto
- Liity-toiminto
Taulukon ilmoittaminen ja alustaminen
VB.NET: ssä taulukot ilmoitetaan käyttämällä Dim-käskyä. Esimerkiksi:
Dim myData() As Integer
Yllä olevassa esimerkissä olemme määrittäneet taulukon nimeltä myData, ja siinä tulisi olla kokonaislukutietotyypin elementtejä. Seuraava esimerkki osoittaa, kuinka voimme julistaa taulukon merkkijonoelementtien säilyttämiseksi:
Dim myData(10) As String
Olemme määrittäneet taulukon nimeltä myData pitämään 10 merkkijonoa.
Voimme alustaa taulukot niiden ilmoituksen yhteydessä. Esimerkiksi:
Dim myData() As Integer = {11, 12, 22, 7, 47, 32}
Olemme ilmoittaneet taulukon myData ja lisänneet siihen 6 kokonaislukuelementtiä. Tämä voidaan tehdä myös jousille:
Dim students() As String = {"John", "Alice", "Antony", "Gloria", "jayden"}
Olemme luoneet taulukon nimeltä opiskelijat ja lisänneet siihen 5 nimeä.
Kiinteäkokoiset taulukot
Kiinteäkokoisessa taulukossa on kiinteä määrä elementtejä. Tämä tarkoittaa, että sinun on määritettävä niiden elementtien lukumäärä, joita sillä on määrittelyn aikana. Oletetaan, että tarvitset taulukon vain 3 opiskelijan nimen säilyttämiseen. Voit määrittää ja alustaa taulukon seuraavasti:
Dim students(0 to 2) As Stringstudents(0) = "John"students (1) = "Alice"students (2) = "Antony"
Aloitimme julistamalla merkkijonoryhmän nimeltä opiskelijat. 0–2 ilmoittaa, että matriisi tallentaa elementit indeksistään 0 indeksiin 2, mikä tarkoittaa, että meillä on yhteensä 3 elementtiä.
Elementtien lisäämiseksi taulukkoon olemme käyttäneet taulukon nimeä ja määrittäneet indeksin, johon elementti tallennetaan. Esimerkiksi nimi John tallennetaan taulukon hakemistoon 0, mikä tarkoittaa, että se muodostaa ryhmän ensimmäisen elementin. Antony on matriisin viimeinen osa.
Dynaamiset taulukot
Tämä on taulukko, johon mahtuu mikä tahansa määrä elementtejä. Ryhmän koko voi kasvaa milloin tahansa. Tämä tarkoittaa, että voit lisätä uusia elementtejä taulukkoon milloin tahansa. Tämän osoittamiseksi määritetään ensin joukko kokonaislukuja:
Dim nums() As Integer
Olemme määrittäneet kokonaisluvun taulukon nimeltä nums. Sinun on nyt lisättävä kaksi elementtiä matriisiin samalla, kun jätät tilaa sen koon muuttamiseen. Sinun on käytettävä ReDim-käskyä seuraavasti:
ReDim nums(1)nums(0) = 12nums(1) = 23
Matriisissamme on nyt kaksi elementtiä indekseissä 0 ja 1. Meidän on lisättävä siihen kolmas elementti hakemistoon 3 säilyttäen samalla jo olevat kaksi elementtiä. Voimme tehdä sen seuraavasti:
ReDim Preserve nums(2)nums(2) = 35
Matriisissa on nyt kolme elementtiä.
Taulukon sisällön hakeminen
Nouto tarkoittaa pääsyä matriisielementteihin. Taulukkoelementtiin pääsemiseksi käytämme sen hakemistoa. Osoittakaamme tätä esimerkin avulla.
Vaihe 1) Aloita luomalla uusi konsolisovellus.
Vaihe 2) Lisää seuraava koodi sovellukseen:
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
Vaihe 3) Suorita koodi napsauttamalla työkalurivin Käynnistä-painiketta. Saat seuraavan ikkunan:
Olemme käyttäneet seuraavaa koodia:
Koodin selitys:
- Moduulin nimisen moduulin luominen 1.
- Pääalimenettelyn luominen.
- Luo taulukko nimeltä opiskelijat merkkijonoelementtien tallentamiseksi. Taulukko tallentaa elementit indeksistä 0 kohtaan 2, mikä tarkoittaa, että siinä on yhteensä 3 elementtiä.
- Lisätään nimi John matriisin ensimmäiseksi elementiksi, eli John on tallennettu hakemistoon 0.
- Lisätään nimi Alice taulukon toiseen elementtiin, toisin sanoen Alice, joka on tallennettu hakemistoon 1.
- Lisää nimi Antony taulukon kolmanneksi elementiksi, eli Antony, joka on tallennettu hakemistoon 2.
- Tulostetaan tekstiä ja ryhmän opiskelijoiden hakemistoon 0 tallennettua elementtiä konsolille. Opiskelijat (0) auttavat meitä pääsemään matriisin nimeltä taulukko 0 olevaan elementtiin.
- Tulostetaan tekstiä ja ryhmän opiskelijoiden hakemistoon 1 tallennettu elementti konsolille. Opiskelijat (1) auttavat meitä pääsemään matriisin nimisen ryhmän hakemistossa 1 olevaan elementtiin.
- Tulostetaan tekstiä ja ryhmän opiskelijoiden hakemistoon 2 tallennettu elementti konsolille. Opiskelijat (2) auttavat meitä pääsemään matriisin nimeltä taulukko 2 olevaan elementtiin.
- Keskeytetään konsoli-ikkunan odottaminen tai käyttäjän toimien sulkemiseksi.
- Alimenettelyn loppu.
- Moduulin loppu.
Uusien elementtien lisääminen taulukkoon
Tämä tapahtuu vain, jos sinulla on dynaaminen taulukko. Jos olet ilmoittanut kiinteäkokoisen matriisiryhmän ja se on täynnä taulukkoelementtejä, et voi lisätä siihen uusia elementtejä. Seuraava esimerkki osoittaa, kuinka uusia elementtejä lisätään dynaamiseen matriisiin:
Vaihe 1) Aloita luomalla uusi konsolisovellus.
Vaihe 2) Lisää seuraava koodi sovellukseen:
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
Vaihe 3) Suorita koodi napsauttamalla työkalupalkin Käynnistä-painiketta. Sinun pitäisi saada seuraava ikkuna:
Olemme käyttäneet seuraavaa koodia:
Koodin selitys:
- Moduulin nimisen moduulin luominen 1.
- Pääalimenettelyn luominen.
- Nums-nimisen taulukon luominen kokonaislukuarvojen säilyttämiseksi.
- Määritetään, että yllä oleva taulukko tallentaa kaksi elementtiä, eli indekseihin 0 ja 1, samalla kun annetaan tilaa koon muuttamiseen.
- Elementin 12 lisääminen taulukon numeroiden hakemistoon 0.
- Elementin 23 lisääminen taulukon numeroiden hakemistoon 1.
- Käyttämällä for-silmukkaa muuttujan x luomiseen, joka auttaa meitä iteroimaan taulukon numeroiden ensimmäisestä viimeiseen elementtiin. Huomaa, että taulukossa on nyt kaksi elementtiä, 12 ja 23.
- Tulostetaan tekstiä ja taulukon elementtejä konsolille.
- For for -silmukan lopettaminen ja siirtyminen koodin seuraavaan osaan.
- Muuta taulukon summan kokoa, jotta elementit voivat olla hakemistoissa 0–2. Se pystyy nyt tallentamaan kolme elementtiä 2: n sijaan. Säilytä-avainsana auttaa meitä ylläpitämään matriisin nykyisiä elementtejä eli 12 ja 23.
- Lisää elementti 35 matriisin hakemistoon 2. Matriisissa on nyt kolme elementtiä, 12, 23 ja 35.
- Käyttämällä for-silmukkaa muuttujan x luomiseen, joka auttaa meitä iteroimaan taulukon numeroiden ensimmäisestä viimeiseen elementtiin. Huomaa, että taulukossa on nyt kolme elementtiä, 12, 23 ja 35.
- Tulostetaan tekstiä ja taulukon elementtejä konsolille.
- For for -silmukan lopettaminen ja siirtyminen koodin seuraavaan osaan.
- Keskeytä konsoli-ikkuna odottamaan käyttäjän ryhtyvän toimiin sen sulkemiseksi.
- Alimenettelyn loppu.
- Moduulin loppu.
Taulukon poistaminen
On suositeltavaa, että poistat taulukon, kun olet valmis siihen, lähinnä silloin, kun olet tekemisissä dynaamisen taulukon kanssa. Tämä auttaa vapauttamaan muistitilaa.
Jos haluat poistaa taulukon, sinun on vain kutsuttava Erase-käskyä ja sen jälkeen taulukon nimeä. Esimerkiksi:
Dim nums(1) As Integernums(0) = 12nums(1) = 23Erase nums
Olemme ilmoittaneet joukon kokonaislukuja nimeltä nums ja lisänneet siihen kaksi elementtiä. Erase nums -lauseke poistaa taulukon.
Jaettu toiminto
Visual Basic .NET: n tarjoama jakotoiminto auttaa meitä jakamaan merkkijono osiksi ja pitämään ne matriisissa. Seuraava esimerkki osoittaa tämän toiminnon käyttämisen:
Vaihe 1) Luo uusi konsolisovellus.
Vaihe 2) Lisää seuraava koodi sovellukseen:
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
Vaihe 3) Suorita koodi napsauttamalla työkalurivin Käynnistä-painiketta. Sinun pitäisi saada seuraava ikkuna:
Olemme käyttäneet seuraavaa koodia:
Koodin selitys:
- Moduulin nimisen moduulin luominen 1.
- Pääalimenettelyn aloittaminen.
- Luodaan taulukko nimeltä myarray merkkijonojen arvojen säilyttämiseksi.
- Merkkijonomuuttujan nimeltä guru99 luominen.
- Luo kokonaislukumuuttuja nimeltä x.
- Merkkijonon määrittäminen muuttujalle guru99.
- Halkaise yllä oleva merkkijono osiksi ja sijoita ne ryhmään nimeltä myarray. "," (Pilkku) on erotin, joten jako-funktio käyttää sitä merkitsemään merkkijonon eri osien loppua.
- Muuttujan x avulla voit toistaa taulukon nimeltä myarray. LBound ja UBound määrittävät matriisin ala- ja ylärajat.
- Tulosta myarray-nimisen taulukon arvot konsolille.
- For for -silmukan ja
Liity-toiminto
Liity-toiminto auttaa meitä yhdistämään useita matriiseja yhdeksi merkkijonoksi. Seuraava esimerkki osoittaa tämän:
Vaihe 1) Aloita luomalla uusi konsolisovellus.
Vaihe 2) Lisää seuraava koodi sovellukseen:
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
Vaihe 3) Suorita koodi napsauttamalla työkalupalkin Käynnistä-painiketta:
Olemme käyttäneet seuraavaa koodia:
Koodin selitys:
- Moduulin nimisen moduulin luominen 1.
- Pääalimenettelyn luominen.
- Luodaan taulukko nimeltä opiskelijat pitämään 3 merkkijonoa.
- Nimen John lisääminen taulukon hakemistoon 0.
- Nimen Alice lisääminen taulukon hakemistoon 1.
- Lisää nimi Antony taulukon hakemistoon 2.
- Määritetään muuttuja nimeltä merkkijonotietotyypin luokkatoverit.
- Taulukon opiskelijoiden kaikkien elementtien yhdistäminen ja erottaminen a, (pilkulla). Tämän toiminnon tulos osoitetaan muuttuville luokkatovereille.
- Luokkatoverimuuttujan sisällön tulostaminen konsolille.
- Keskeytetään konsoli-ikkunan odottaminen, kunnes käyttäjä ryhtyy toimiin sen sulkemiseksi.
- Pääalimenettelyn päättäminen.
- Moduulin lopettaminen.
Yhteenveto
- Taulukoita käytetään samaan tietotyyppiin kuuluvien tietoelementtien tallentamiseen.
- Dynaamisen taulukon avulla käyttäjä voi muuttaa sen kokoa lisäämällä siihen lisää elementtejä. ReDim- komentoa käytetään elementtien lisäämiseen olemassa olevaan matriisiin
- Kiinteäkokoisen taulukon kokoa ei voi muuttaa.
- Taulukkoelementit järjestetään hakemistojen avulla siten, että ensimmäinen elementti on indeksissä 0 ja viimeinen elementti indeksissä n-1, missä n on taulukkoelementtien kokonaismäärä.
- Taulukot voidaan poistaa Erase-toiminnolla
- Voit jakaa ja liittää funktioita jakamaan merkkijonoryhmän tai liittyä siihen