Kurs 860 IKTVisual Basic:
|
Vi laster nå ned dette filarkivet, pakker det ut og lagrer filene på m:\vb\less11. |
Et array (den engelske betegnelsen brukes ofte på norsk også, men noen sier i stedet matriser) er en spesiell variabel som brukes til å lagre data på en tabellarisk måte. Arrays kan derfor brukes til å lagre data på en systematisk og oversiktlig måte. Arrays gis navn som for andre variable, f.eks. Poengoversikt.
Her er en illustrasjon av et én-dimensjonalt array med 3 elementer:
|
|
Den første cellen i arrayet refereres til med indekstallet 0, den neste cellen med indekstallet 1, osv.
Et én-dimensjonal array kan alternativt illustreres slik:
|
I arrayet ovenfor er elementene tekststrenger, men elementene i ett og samme array kan generelt ha forskjellige datatyper.
Arrays kan ha et vilkårlig antall dimensjoner (såkalte flerdimensjonale arrays). Her er en illustrasjon av et to-dimensjonalt array med 3 rader og 2 kolonner:
|
|
Husk at et array kun er en variabel, du kan altså ikke se arrayet på programmets skjermbilde, med mindre du lager programmet slik at array-elementer vises i egnede skjermbildeobjekter.
Et array som har et forhåndsbestemt antall elementer (i hver dimensjon) er et fast (eng.: fixed) array. Arrayer i Visual Basic kan også ha et variabelt antall elementer. Dette er dynamiske (dynamic) arrays. Antallet elementer kan da økes som resultat av programkjøringen.
Anta som eksempel at det to-dimensjonale arrayet ovenfor har navnet Innbyggeroversikt. Du kan da lese verdien av elementet i 2. rad og 1. kolonne slik:
Label1.Caption = Innbyggeroversikt(1,0)
Label-elementet bør da vise tekststrengen "Danmark".
Du kan også skrive verdier til et array. Eksempel:
Innbyggeroversikt(2,1) = 8500000
Dersom du skal referere til et element i et én-dimensjonalt array, bruker du naturlig nok denne syntaksen:
Arraynavn(elementindeks)
Å deklarere (eng.: declare) et array betyr å definere eller lage arrayet, slik at Visual Basic setter av passende lagerplass til det.
Et fast array kan deklareres som i dette eksempelet (det antas her at arrayet skal være en global variabel som deklareres i en standard-modul):
Public Innbyggeroversikt(3,2) As Variant
Her er det angitt antall elementer i hver av de to dimensjonene. Arrayet har datatype variant, hvilket betyr at elementene kan ha en hvilken som helst datatype. Dersom alle elementene har samme datatype, la oss si Integer, kan du i stedet for Variant skrive Integer.
Et dynamisk array defineres ganske enkelt slik:
Public Innbyggeroversikt() As Variant
Indeksantallene er altså sløyfet.
I utgangspunktet har elementindeksene verdiene 0, 1, 2 osv. Dersom du ønsker at elementindekseringen skal begynne på 1 i stedet for 0, skriver du f.eks.:
Option Base 1
Public Innbyggeroversikt(3,2) As Variant
Vi ser på programmet Baseball på m:\vb\less101 som demonstrerer bruk av flerdimensjonale faste arrays. |