Hvordan initialiseres et array i Java?
Et array er en datastruktur i Java, der bruges til at lagre dataobjekter med samme datatype. Hvert element i et array har en unik indeksværdi. I et array skal vi først erklære dets størrelse, og størrelsen af arrayet er fast. I et array kan vi gemme elementer af forskellige datatyper som heltal, streng, dato osv. I denne artikel vil vi diskutere forskellige måder at erklære og initialisere et array på.
Erklæring af et array i Java
Et array erklæres ved at bruge dets datatype og identifikator. I Java er arrays erklæret på samme måde som andre variabler erklæres, men en ekstra parentes [] tilføjes, når vi erklærer en array.
Syntaks:
int arr []; int [] arr;
Her er størrelsen af arrayet ikke nævnt, fordi der oprettes en reference til et array i hukommelsen. Det kan også være kendt som en hukommelsesadresse for et array.
Hvordan initialiseres et array i Java?
Efter at have erklæret et array skal vi initialisere det med værdier, som vi skal gøre det med andre variabler. I et array skal vi tildele flere værdier, så initialiseringsprocessen er ikke så enkel som variabler. Vi kan initialisere et array med standard- eller ikke-standardværdier. Nedenfor er der forskellige metoder til at initialisere et array:
- Initialiser et array med standardværdier
- Initialiser et array med ikke-standardværdier
- Initialiser et array ved hjælp af krøllede klammeparenteser { }
- Initialisering ved hjælp af stream Interface
Initialiser et array med standardværdier
I Java kan et array initialiseres som standardværdier, når størrelsen af arrayet er erklæret med rektangulære parenteser [ ].
int [] arr = new int[20];
I ovenstående kode er en matrix af størrelse 20 erklæret, hvor datatypen er heltal. Forskellige datatyper har forskellige standardværdier, som initialiseres på tidspunktet for deklarationen. For heltalstype array er standardværdien 0, false er standardværdien for boolean type array og tom streng er standardværdien for string type array.
Initialiser et array med ikke-standardværdier
I Java kan vi også initialisere et array med bestemte værdier. Til det skal vi initialisere hver værdi en efter en. Men denne metode er kun nyttig for små størrelser af arrays ikke til arrays med store størrelser. For store arrays skal vi bruge en loop til at initialisere ikke-standardværdier.
I det følgende eksempel erklæres et heltalstype-array af størrelse 6, og derefter initialiseres 6 ikke-standardværdier i det.
int[] arr = new int[6]; arr[0] = 8; arr[1] = 6; arr[2] = 4; arr[3] = 2; arr[4] = 1; arr[5] = 9;
Initialiser et array ved hjælp af krøllede klammeparenteser { }
Et array kan også initialiseres ved at bruge krøllede seler, hvor vi ikke behøver at angive størrelsen af arrayet. Alle ikke-standardværdier initialiseres i de krøllede klammeparenteser, som er adskilt af et komma.
I det følgende eksempel initialiseres et array af strengtype med ikke-standardværdier ved hjælp af krøllede klammeparenteser.
String[] arrStr = {'Geeks', 'of', 'Geeks'}; Initialisering ved hjælp af stream Interface
Et array kan initialiseres ved at bruge et stream-interface, som genererer en strøm af værdier, og derefter konverteres det til et array. Nedenfor er tre instream-grænseflader, der bruges til at initialisere en heltalstype-array.
- IntStream.range()
- IntStream.rangeClosed()
- IntStream.of()
1. IntStream.range()
Det bruges til at initialisere et array af heltal inden for et givet interval. Den første parameter i intervallet vil være det første element i arrayet, og de andre elementer i arrayet vil være større end dette element, men mindre end den anden parameter i intervallet.
2. IntStream.rangeClosed()
Vi kan også bruge rangeClosed() i stedet for rækkevidde() hvis vi vil tilføje det sidste element i området i et array. Den første parameter i rangeClosed() metode vil være det første element i arrayet, og de andre elementer i arrayet vil være større end dette element, men mindre end og lig med den anden parameter i arrayet rangeClosed() metode.
3. IntStream.of()
Denne metode fungerer på samme måde som krøllede seler, hvor vi skal nævne hvert enkelt element individuelt, som vi ønsker at tildele til arrayet. I den følgende kode har vi tildelt værdier til arrayet ved at bruge disse tre grænseflader.
Eksempel:
Java
// Java program to demonstrate different ways of> // initializing an integer array.> import> java.util.stream.IntStream;> > // Driver Clas> public> class> Main {> > // Main function> > public> static> void> main(String[] args)> > {> > > // an array of integers using IntStream.range()> > // method> > int> [] arr1 = IntStream.range(> 1> ,> 5> ).toArray();> > for> (> int> i => 0> ; i System.out.print(arr1[i] + ' '); } System.out.print('
'); // an array of integers using // IntStream.rangeClosed() method int[] arr2 = IntStream.rangeClosed(1, 4).toArray(); for (int i = 0; i System.out.print(arr2[i] + ' '); } System.out.print('
'); // an array of integers using IntStream.of() // method int[] arr3 = IntStream.of(1, 2, 3, 4).toArray(); for (int i = 0; i System.out.print(arr3[i] + ' '); } } }> |
Produktion
1 2 3 4 1 2 3 4 1 2 3 4