logo

Cum să inițializați o matrice în Java?

O matrice este o structură de date în Java care este utilizată pentru a stoca obiecte de date având același tip de date. Fiecare element dintr-o matrice are o valoare de index unică. Într-o matrice, trebuie să declarăm mai întâi dimensiunea acesteia, iar dimensiunea matricei este fixă. Într-o matrice, putem stoca elemente de diferite tipuri de date, cum ar fi întreg, șir, dată și etc. În acest articol, vom discuta despre diferite moduri de a declara și inițializa o matrice.

matrice bash

Declararea unui Array în Java

O matrice este declarată utilizând tipul și identificatorul său de date. În Java, matricele sunt declarate într-un mod similar cu alte variabile, dar se adaugă o paranteză suplimentară [] când declarăm o matrice.

Sintaxă:



int arr []; int [] arr;>

Aici, dimensiunea matricei nu este menționată deoarece o referință a unui tablou este creată în memorie. Poate fi cunoscută și ca adresă de memorie a unui tablou.

Cum să inițializați o matrice în Java?

După declararea unei matrice, trebuie să o inițializam cu valori așa cum trebuie să facem cu alte variabile. Într-o matrice, trebuie să atribuim mai multe valori, astfel încât procesul de inițializare nu este la fel de simplu ca variabilele. Putem inițializa o matrice cu valori implicite sau non-implicite. Mai jos sunt diferite metode de inițializare a unui Array:

  • Inițializați un Array cu valori implicite
  • Inițializați un Array cu valori care nu sunt implicite
  • Inițializați o matrice folosind acolade { }
  • Inițializare folosind interfața de flux

Inițializați un Array cu valori implicite

În Java, o matrice poate fi inițializată prin valori implicite atunci când dimensiunea matricei este declarată cu paranteze dreptunghiulare [ ].

int [] arr = new int[20];>

În codul de mai sus, este declarată o matrice de dimensiunea 20 unde tipul de date este întreg. Diferite tipuri de date au valori implicite diferite care sunt inițializate în momentul declarării. Pentru matrice de tip întreg, valoarea implicită este 0, false este valoarea implicită pentru matrice de tip boolean și șir gol este valoarea implicită pentru matrice de tip șir.

Inițializați un Array cu valori care nu sunt implicite

În Java, putem, de asemenea, inițializa o matrice cu anumite valori. Pentru aceasta, trebuie să inițializam fiecare valoare una câte una. Dar această metodă este utilă numai pentru matrice de dimensiuni mici, nu pentru matrice cu dimensiuni mari. Pentru matrice de dimensiuni mari, trebuie să folosim o buclă pentru a inițializa valorile care nu sunt implicite.

În exemplul următor, o matrice de tip întreg de dimensiunea 6 este declarată și apoi sunt inițializate 6 valori non-implicite în ea.

int[] arr = new int[6]; arr[0] = 8; arr[1] = 6; arr[2] = 4; arr[3] = 2; arr[4] = 1; arr[5] = 9;>

Inițializați o matrice folosind acolade { }

O matrice poate fi inițializată și folosind acolade unde nu trebuie să declarăm dimensiunea matricei. Toate valorile care nu sunt implicite sunt inițializate în acolade care sunt separate prin virgulă.

În exemplul următor, o matrice de tip șir este inițializată cu valori care nu sunt implicite folosind acolade.

String[] arrStr = {'Geeks', 'of', 'Geeks'};>

Inițializare folosind interfața de flux

O matrice poate fi inițializată utilizând o interfață de flux care generează un flux de valori și apoi este convertită într-o matrice. Mai jos sunt trei interfețe instream care sunt utilizate pentru a inițializa o matrice de tip întreg.

  • IntStream.range()
  • IntStream.rangeClosed()
  • IntStream.of()

1. IntStream.range()

Este folosit pentru a inițializa o matrice de numere întregi într-un interval dat. Primul parametru din interval va fi primul element al matricei, iar celelalte elemente din matrice vor fi mai mari decât acel element, dar mai mici decât al doilea parametru al intervalului.

2. IntStream.rangeClosed()

Putem folosi, de asemenea rangeClosed() în loc de gamă() dacă vrem să adăugăm ultimul element al intervalului într-o matrice. Primul parametru din rangeClosed() metoda va fi primul element al matricei, iar celelalte elemente din matrice vor fi mai mari decât acel element, dar mai mici decât și egale cu al doilea parametru al matricei. rangeClosed() metodă.

3. IntStream.of()

Această metodă funcționează în mod similar cu bretele unde trebuie să menționăm fiecare element individual pe care dorim să-l atribuim matricei. În următorul cod, am atribuit valori matricei utilizând aceste trei interfețe.

Exemplu:

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] + ' '); } } }>

>

>

Ieșire

1 2 3 4 1 2 3 4 1 2 3 4>