En forelesningsbit med en mentor som en del av Codegym University-kurset. Meld deg på hele kurset.
"Hei, Amigo!"
"Hei, Ellie!"
"I dag skal jeg fortelle deg om en ny og interessant enhet: matriser. En matrise er en datatype som kan lagre flere verdier i stedet for bare én."

"La oss starte med en analogi. La oss sammenligne et hus og en bygård. Et vanlig hus er vanligvis okkupert av bare én familie, men en bygård er delt inn i mange leiligheter. For å sende et brev til en familie som bor i et hus, må du må angi den unike adressen til huset. For å sende et brev til en familie som bor i en bygård, må du skrive bygårdens unike adresse og leilighetsnummeret."
"Alt virker klart så langt."
"En matrisevariabel er som en boligbyggvariabel. Du kan lagre mange verdier i den i stedet for bare én. En slik variabel har flere leiligheter (elementer) som du kan referere til ved hjelp av et leilighetsnummer (indeks). For å gjøre dette, angi indeksen til matriseelementet du vil ha tilgang til i hakeparenteser etter navnet på matrisevariabelen. Det er ganske enkelt."
"Jeg håper det, Ellie."
"En leilighetsbyggvariabel (arrayvariabel) kan inneholde elementer av hvilken som helst type. Du trenger bare å skrive ' TypeName[] variable_name ' i stedet for ' TypeName variable_name '."
Her er noen eksempler:
Kode | Beskrivelse |
---|---|
|
Lag en String matrise med 5 elementer |
|
Fem null -verdier vises.
For å få tilgang til verdien til et bestemt matriseelement, bruk firkantede parenteser og elementets indeks. |
|
listCount vil bli tildelt verdien 5, som er antall elementer i matrisen list . lagrer matrisens lengde (antall elementer).list.length |
|
Når du tilordner objekter til matriseelementer, må du angi elementindeksen i hakeparenteser. |
|
Vis verdiene til alle matriseelementer på skjermen. |
"Hvor interessant!"
"En matrisevariabel krever ekstra initialisering."
— ?
"Med en vanlig variabel kan du bare deklarere den og deretter tilordne forskjellige verdier til den. Med en matrise er det litt mer komplisert."
"Du må først lage en beholder som vil inneholde N elementer, og først da kan du begynne å plassere verdier i beholderen."
Kode | Beskrivelse |
---|---|
|
Matrisevariabelen list er null . Den kan bare lagre en referanse til en beholder for elementer. Du må opprette beholderen separat. |
|
Lag en beholder for 5 elementer og tilordne en referanse til list variabelen. Denne beholderen har 5 leiligheter (elementer) nummerert 0, 1, 2, 3 og 4. |
|
Opprett en beholder for 1 element og tilordne en referanse til list variabelen. For å legge noe i denne beholderen, ville vi skrive noe sånt somlist[0] = "Yo!"; |
|
Lag en beholder for 0 elementer og tilordne en referanse til list variabelen. Du kan ikke lagre noe i denne beholderen. |
"Jeg skjønner. Nå blir det klarere."
"Her er noen grunnleggende fakta om arrays:"
1) En matrise består av mange elementer.
2) For å få tilgang til et bestemt element, angir du dets nummer (indeks).
3) Alle elementer er av samme type.
4) Startverdien for alle elementer er null; for matriser av primitive typer er startverdien 0, 0,0 (for brøktall) eller usann (for booleaner). Det er nøyaktig det samme som med uinitialiserte variabler som ikke er i matriser.
5) String[] liste erklærer ganske enkelt en variabel. Du må først lage en matrise (beholder), legge noe inn i den, og først deretter bruke den (se eksempelet nedenfor).
6) Når vi lager et array (container) objekt, må vi angi lengden, eller antall elementer. Vi gjør dette ved å bruke nytt Typenavn[n];

Her er noen eksempler:
Kode | Beskrivelse |
---|---|
|
s lik null list er lik null |
|
Variabelen list lagrer en referanse til et objekt – en 10-elements rekke med strenger n er lik 10 |
|
list Inneholder nå en 0 elementarray. Matrisen eksisterer, men den kan ikke lagre strenger. |
|
Dette vil gi et unntak (runtime error) og programmet vil bli unormalt avsluttet: list inneholder en nullreferanse. |
|
Dette vil gi et unntak (runtime error): array index out of bounds.
Hvis |
GO TO FULL VERSION