En matrise er et objekt i Visual Basic som brukes til å lagre en rekke verdier som har en logisk sammenheng . Arrays avvike fra skalar variabler, som kan inneholde én verdi om gangen . I motsetning til dette , kan en matrise holde en eller flere serier av verdier , kalt dimensjoner. Hver matrise har minst én dimensjon , og hver dimensjon har et gyldig område av verdier . Hvis du prøver å få tilgang til et element utenfor dette området , vil programmet kaste en " senket utenfor rekkevidde " feil. Array referere
Array dimensjoner er bestilt, og blir referert til av en indeks eller senket nummer. Det første element i en dimensjon er alltid nummerert fra null , og hvert påfølgende element er en større. Tenk deg at du skulle lage en rekke studenter - "studenter () " - i en klasse med seks studenter : Andrea , Frank , Richard , Rachel , Melissa og Kacie . Du ville tildele og hente array elementer av deres indeks , eller senket nummer. Å tildele Andrea til det første elementet , ville koden lese :
studenter ( 0 ) = " Andrea "
Du leser fra en matrise ved å angi indeksen , også. For eksempel, hvis du ønsket å vise en meldingsboks med den siste studenten i listen, ville koden lese :
MsgBox studenter ( 5 )
Runtime Error
Visual Basic er et kompilert språk . Du kan skrive kode som vil kompilere vellykket , men som forsøker å skrive eller lese fra en rekke element utenfor de nedre og øvre grenser definert for det. Under kjøring vil dette føre til at programmet til å kaste et unntak , og vise feilmeldingen " Senket Out of Range". Eliminere dette problemet ved å forstørre eller krymper grensene for array etter behov.
Dim og ReDim
Du bruker Visual Basic er " Dim " statement å erklære en tabellens dimensjoner og grensene . I sin enkleste form er " Dim " statement syntaks : en
Dim ArrayName ( senket ) som DataType
" ArrayName " er navnet på arrayet , og datatype kan være noen. gyldig skalar variabel type. Hvis du angir en senket for matrise din , er det en fast verdi , og kan ikke endres. Men hvis du utelater en verdi mellom parenteser , anser Visual Basic erklært array å være dynamisk . Dynamiske arrays kan bli endret når som helst ved hjelp av " ReDim " statement.
Hensyn
" ReDim " statement kan forminske eller forstørre en dynamisk array. Men med mindre du inkluderer den valgfrie søkeordet " bevare ", alle array- verdier vil bli tilbakestilt til standardverdiene , tom verdi . Matriser med heltall vil ha hvert element satt til null , for eksempel.
Du kan forstørre en rekke iterativt ved hjelp av noen form for looping algoritme og en teller. Den " ReDim " statement kan ta kombinasjoner av skalar variabler og numeriske konstanter som argumenter . Dermed kan du forstørre tellervariabelen etter én i hver iterasjon.
Du kan teste den øvre og den nedre grensen i en matrise med " GetUpperBound " og " GetLowerBound " kommandoer . Du kan redusere ut av rekkevidde unntak ved å teste disse grensene før du leser fra eller skriver til en matrise element .