En array är en datastruktur i Java som används för att lagra dataobjekt med samma datatyp. Varje element i en array har ett unikt indexvärde. I en array måste vi först deklarera dess storlek och storleken på arrayen är fast. I en array kan vi lagra element av olika datatyper som heltal, sträng, datum och etc. I den här artikeln kommer vi att diskutera olika sätt att deklarera och initiera en array.
maskininlärningsmodeller
Deklarera en Array i Java
En matris deklareras med hjälp av dess datatyp och identifierare. I Java deklareras arrayer på liknande sätt som andra variabler deklareras men en extra parentes [] läggs till när vi deklarerar en array.
Syntax:
int arr []; int [] arr;>
Här nämns inte storleken på arrayen eftersom en referens till en array skapas i minnet. Det kan också kallas en minnesadress för en array.
Hur initierar man en array i Java?
Efter att ha deklarerat en array måste vi initialisera den med värden som vi måste göra det med andra variabler. I en array måste vi tilldela flera värden, så initieringsprocessen är inte så enkel som variabler. Vi kan initiera en array med standardvärden eller icke-standardvärden. Nedan finns olika metoder för att initiera en array:
- Initiera en Array med standardvärden
- Initiera en Array med icke-standardvärden
- Initiera en array med lockiga hängslen { }
- Initiering med stream Interface
Initiera en Array med standardvärden
I Java kan en array initieras som standardvärden när storleken på arrayen deklareras med rektangulära parenteser [ ].
int [] arr = new int[20];>
I ovanstående kod deklareras en array av storlek 20 där datatypen är heltal. Olika datatyper har olika standardvärden som initieras vid tidpunkten för deklarationen. För array av heltalstyp är standardvärdet 0, false är standardvärdet för array av boolesk typ och tom sträng är standardvärdet för array av strängtyp.
Initiera en Array med icke-standardvärden
I Java kan vi också initiera en array med särskilda värden. För det måste vi initialisera varje värde ett efter ett. Men den här metoden är bara användbar för små storlekar av arrayer inte för arrayer med stora storlekar. För stora arrayer måste vi använda en loop för att initiera icke-standardvärden.
I följande exempel deklareras en matris av heltalstyp av storlek 6 och sedan initieras 6 icke-standardvärden i den.
int[] arr = new int[6]; arr[0] = 8; arr[1] = 6; arr[2] = 4; arr[3] = 2; arr[4] = 1; arr[5] = 9;>
Initiera en array med lockiga hängslen { }
En array kan också initieras genom att använda lockiga hängslen där vi inte behöver deklarera storleken på arrayen. Alla icke-standardvärden initieras i de krulliga klammerparenteserna som är separerade med ett kommatecken.
I följande exempel initieras en array av strängtyp med icke-standardvärden med hjälp av klammerparenteser.
String[] arrStr = {'Geeks', 'of', 'Geeks'};>
Initiering med stream Interface
En array kan initieras genom att använda ett strömgränssnitt som genererar en ström av värden och sedan omvandlas den till en array. Nedan finns tre inströmsgränssnitt som används för att initiera en matris av heltalstyp.
- IntStream.range()
- IntStream.rangeClosed()
- IntStream.of()
1. IntStream.range()
Den används för att initiera en array av heltal inom ett givet intervall. Den första parametern i intervallet kommer att vara det första elementet i arrayen och de andra elementen i arrayen kommer att vara större än det elementet men mindre än den andra parametern i intervallet.
2. IntStream.rangeClosed()
Vi kan också använda rangeClosed() istället för räckvidd() om vi vill lägga till det sista elementet i intervallet i en array. Den första parametern i rangeClosed() metod kommer att vara det första elementet i arrayen och de andra elementen i arrayen kommer att vara större än det elementet men mindre än och lika med den andra parametern i rangeClosed() metod.
3. IntStream.of()
Denna metod fungerar på samma sätt som lockiga hängslen där vi måste nämna varje element individuellt som vi vill tilldela till arrayen. I följande kod har vi tilldelat värden till arrayen genom att använda dessa tre gränssnitt.
Exempel:
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>