Kako inicializirati matriko v Javi?
Matrika je podatkovna struktura v Javi, ki se uporablja za shranjevanje podatkovnih objektov z enakim podatkovnim tipom. Vsak element v matriki ima edinstveno vrednost indeksa. V matriki moramo najprej deklarirati njeno velikost in velikost matrike je fiksna. V matriko lahko shranimo elemente različnih tipov podatkov, kot so celo število, niz, datum itd. V tem članku bomo razpravljali o različnih načinih deklariranja in inicializacije matrike.
Deklaracija polja v Javi
Niz je deklariran z uporabo njegovega podatkovnega tipa in identifikatorja. V Javi so polja deklarirana na podoben način, kot so deklarirane druge spremenljivke, vendar je pri deklaraciji matrike dodan dodaten oklepaj [].
Sintaksa:
int arr []; int [] arr;
Tukaj velikost matrike ni omenjena, ker je referenca matrike ustvarjena v pomnilniku. Znan je tudi kot pomnilniški naslov matrike.
Kako inicializirati matriko v Javi?
Ko deklariramo matriko, jo moramo inicializirati z vrednostmi, kot moramo to storiti z drugimi spremenljivkami. V matriki moramo dodeliti več vrednosti, zato postopek inicializacije ni tako preprost kot spremenljivke. Matriko lahko inicializiramo s privzetimi ali neprivzetimi vrednostmi. Spodaj so različni načini za inicializacijo matrike:
- Inicializirajte matriko s privzetimi vrednostmi
- Inicializirajte matriko z neprivzetimi vrednostmi
- Inicializirajte matriko z zavitimi oklepaji { }
- Inicializacija z uporabo pretočnega vmesnika
Inicializirajte matriko s privzetimi vrednostmi
V Javi je matriko mogoče inicializirati s privzetimi vrednostmi, ko je velikost matrike deklarirana s pravokotnimi oklepaji [ ].
int [] arr = new int[20];
V zgornji kodi je deklarirana matrika velikosti 20, kjer je podatkovni tip celo število. Različni tipi podatkov imajo različne privzete vrednosti, ki se inicializirajo v času deklaracije. Za niz celih števil je privzeta vrednost 0, false je privzeta vrednost za niz logičnega tipa, prazen niz pa je privzeta vrednost za niz nizov.
Inicializirajte matriko z neprivzetimi vrednostmi
V Javi lahko tudi inicializiramo matriko z določenimi vrednostmi. Za to moramo inicializirati vsako vrednost eno za drugo. Toda ta metoda je uporabna samo za nize majhnih velikosti in ne za nize velikih velikosti. Pri nizih velikih velikosti moramo uporabiti zanko za inicializacijo neprivzetih vrednosti.
V naslednjem primeru je deklarirana matrika celih števil velikosti 6 in nato je v njej inicializiranih 6 neprivzetih vrednosti.
int[] arr = new int[6]; arr[0] = 8; arr[1] = 6; arr[2] = 4; arr[3] = 2; arr[4] = 1; arr[5] = 9;
Inicializirajte matriko z zavitimi oklepaji { }
Matriko lahko inicializiramo tudi z uporabo zavitih oklepajev, kjer nam ni treba deklarirati velikosti matrike. Vse neprivzete vrednosti so inicializirane v zavitih oklepajih, ki so ločeni z vejico.
V naslednjem primeru je matrika tipa niz inicializirana z neprivzetimi vrednostmi z uporabo zavitih oklepajev.
String[] arrStr = {'Geeks', 'of', 'Geeks'}; Inicializacija z uporabo pretočnega vmesnika
Matriko je mogoče inicializirati z uporabo tokovnega vmesnika, ki generira tok vrednosti in se nato pretvori v matriko. Spodaj so trije vhodni vmesniki, ki se uporabljajo za inicializacijo niza celih vrst.
- IntStream.range()
- IntStream.rangeClosed()
- IntStream.of()
1. IntStream.range()
Uporablja se za inicializacijo niza celih števil znotraj danega obsega. Prvi parameter v obsegu bo prvi element niza, drugi elementi v nizu pa bodo večji od tega elementa, vendar manjši od drugega parametra obsega.
2. IntStream.rangeClosed()
Lahko tudi uporabimo rangeClosed() namesto obseg() če želimo dodati zadnji element obsega v nizu. Prvi parameter v rangeClosed() metoda bo prvi element matrike, drugi elementi v matriki pa bodo večji od tega elementa, vendar manjši in enaki drugemu parametru matrike rangeClosed() metoda.
3. IntStream.of()
Ta metoda deluje podobno kot zavit oklepaj, kjer moramo omeniti vsak element posebej, ki ga želimo dodeliti matriki. V naslednji kodi smo matriki dodelili vrednosti z uporabo teh treh vmesnikov.
primer:
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] + ' '); } } }> |
Izhod
1 2 3 4 1 2 3 4 1 2 3 4