Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Hva er et array? | Arrayer
Java Grunnleggende

Hva er et array?

Sveip for å vise menyen

Arrayer

Å lagre informasjon utelukkende i variabler er ikke alltid praktisk, da det vil bruke betydelig mengde stack-minne og kreve mange kodelinjer.

Løsningen på dette problemet er arrayer.

Note
Definisjon

En array er en beholder som kan lagre et fast antall objekter av samme type.

La oss se på den grunnleggende syntaksen for å deklarere en array i Java:

Main.java

Main.java

1
dataType[] arrayName = new dataType[capacity];

Vi kan bruke hvilken som helst datatypen når vi deklarerer et array, inkludert int, float, char og flere.

Det er obligatorisk å angi størrelsen på arrayet i hakeparenteser ([]). La oss se på et eksempel der vi oppretter et array av typen int med størrelse 5:

Main.java

Main.java

12345678910
package com.example; public class Main { public static void main(String[] args) { // Declares a new int array with a length of 5 int[] intArray = new int[5]; // Prints the size of the array System.out.println(intArray.length); } }

Som du kanskje har lagt merke til, brukte vi noe nytt med konsollutskriften — en array-egenskap.

Arrayer har egne egenskaper, som nås ved å bruke punktum (.)-notasjon. I vårt eksempel bruker arrayen intArray en av disse egenskapene. .length-egenskapen returnerer størrelsen på arrayen som en int-verdi. Dette kan også skrives på en annen måte:

Main.java

Main.java

123456789101112
package com.example; public class Main { public static void main(String[] args) { // Declares a new int array with a length of 5 int[] intArray = new int[5]; // Declares a new int with the value of the array's size int length = intArray.length; // Prints the size of the array System.out.println(length); } }

La oss nå se på tre grunnleggende metoder og egenskaper for å arbeide med arrayer:

  • Arrays.sort(array): sorterer elementene i arrayen i stigende rekkefølge;
  • Arrays.fill(array, value): setter alle elementene i arrayen til den angitte verdien;
  • Arrays.toString(array): konverterer arrayen til en strengrepresentasjon, noe som gjør det enklere å vise elementene.
Note
Merk

Disse metodene kommer fra verktøyklassen java.util.Arrays. For å bruke dem må koden din importere denne klassen i starten.

Main.java

Main.java

1234567891011121314151617
package com.example; import java.util.Arrays; public class Main { public static void main(String[] args) { int[] array = {5, 2, 9, 1, 6}; // Sort the array Arrays.sort(array); System.out.println("Sorted array: " + Arrays.toString(array)); // Fill the array with the value 0 Arrays.fill(array, 0); System.out.println("Array after filling: " + Arrays.toString(array)); } }

Først sorteres arrayet i stigende rekkefølge ved hjelp av Arrays.sort(), og det sorterte arrayet vises med Arrays.toString(), som konverterer arrayet til et lesbart strengformat. Deretter blir alle elementene i arrayet erstattet med 0 ved bruk av Arrays.fill(), og det oppdaterte arrayet skrives ut i det samme lesbare formatet.

Note
Merk

array er bare et eksempelnavn for arrayet. Du kan gi arrayet hvilket som helst navn, avhengig av oppgavens krav eller dine egne preferanser.

Hvordan få tilgang til spesifikke data i et array?

Arrayer i Java er indekserte. Hvert element i arrayet ligger i sin egen celle og har en unik ID. Nummereringen av elementene i arrayet starter på 0. Anta at vi har et array med tall fra null til ni, altså har det 10 elementer.

La oss se på et diagram som viser hvordan elementene er organisert i arrayet:

Hvis vi har et array med 10 elementer, vil det første elementet være lagret på indeks 0, og det siste på indeks 9, fordi indekseringen starter fra null.

Note
Merk

I programmering bruker arrayer nullindeksering, noe som betyr at det første elementet er på posisjon 0. Formelen N-1 hjelper med å beregne et elements posisjon i arrayet, der N er elementets nummer (starter fra 1), og N-1 er dets indeks i arrayet.

Praksis er alltid bedre enn bare teori, så her er et eksempel på å legge til og fjerne elementer fra et array ved bruk av indekser:

Main.java

Main.java

12345678910111213141516
package com.example; public class Main { public static void main(String[] args) { // Declares a new int array with a length of 5 int[] intArray = new int[5]; // Fills the array with numbers from 1 to 5 intArray[0] = 1; intArray[1] = 2; intArray[2] = 3; intArray[3] = 4; intArray[4] = 5; // Prints the fourth element of the array System.out.println(intArray[3]); } }

Vi har fylt opp arrayet vårt med elementer fra én til fem ved å angi hvert element med en indeks. Denne metoden mangler imidlertid eleganse og krever mange kodelinjer. La oss se på en alternativ måte å erklære et array på som kommer forhåndsutfylt:

Main.java

Main.java

12345678910
package com.example; public class Main { public static void main(String[] args) { // Declares a new pre-filled int array with a length of 5 int[] intArray = {1, 2, 3, 4, 5}; // Prints the first element of the array System.out.println(intArray[0]); } }

Vi opprettet et array identisk med det vi laget tidligere, men denne gangen krevde det færre kodelinjer og så mer elegant ut.

Det er viktig å merke seg at når du bruker denne array-notasjonen, må elementene være omsluttet av krøllparenteser ({}) og adskilt med kommaer.

Note
Merk

Når vi erklærer et array på denne måten, spesifiserer vi ikke størrelsen eksplisitt. Kompilatoren bestemmer automatisk nødvendig lengde på arrayet basert på de oppgitte elementene og fyller det ut deretter.

1. Hva vil bli skrevet ut når vi kjører denne koden?

2. Hva vil bli skrevet ut når vi kjører denne koden?

question mark

Hva vil bli skrevet ut når vi kjører denne koden?

Velg det helt riktige svaret

question mark

Hva vil bli skrevet ut når vi kjører denne koden?

Velg det helt riktige svaret

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 1

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Seksjon 4. Kapittel 1
some-alt