Nizovi u Java

Što je Java Nizovi?

Java Poredak je vrlo čest tip strukture podataka koji sadrži sve vrijednosti podataka istog tipa podataka. Podatkovne stavke u nizu nazivaju se elementi, a prvi element u nizu počinje s indeksom nula. Nizovi nasljeđuju klasu objekta i implementiraju sučelja koja se mogu serijalizirati i klonirati. Možemo pohraniti primitivne vrijednosti ili objekte u nizu.

Jednostavnim riječima, to je programska konstrukcija koja pomaže ovo zamijeniti

x0=0;
x1=1;
x2=2;
x3=3;
x4=4;
x5=5;

s ovim …

x[0]=0;
x[1]=1;
x[2]=2;
x[3]=3;
x[4]=4;
x[5]=5;

kako ovo pomaže je da varijabla može referencirati indeks (broj u zagradama []) za jednostavno petlje.

for(count=0; count<5; count++) {
     System.out.println(x[count]);
   }

Vrste polja u Java

Postoje dvije vrste niza.

  1. Jednodimenzionalni niz
  2. Višedimenzionalni niz

Niz varijabli

Korištenje niza u vašem programu je a Proces u 3 koraka -

1) Deklariranje vašeg niza

2) Izrada vašeg niza

3) Inicijalizirajte svoj niz

1) Deklariranje vašeg niza

Sintaksa

<elementType>[] <arrayName>;

ili

 <elementType> <arrayName>[];

Primjer:

int intArray[];
 // Defines that intArray is an ARRAY variable which will store integer values
int []intArray;

2) Konstruiranje niza

 arrayname = new dataType[]

Primjer:

intArray = new int[10]; // Defines that intArray will store 10 integer values

Kombinacija deklaracije i konstrukcije

int intArray[] = new int[10];

3) Inicijalizirajte polje

intArray[0]=1; // Assigns an integer value 1 to the first element 0 of the array

intArray[1]=2; // Assigns an integer value 2 to the second element 1 of the array

Deklaracija i inicijalizacija polja

[]  = {};
Primjer:
 int intArray[] = {1, 2, 3, 4};
// Initilializes an integer array of length 4 where the first element is 1 , second element is 2 and so on.

Prvi niz programa

Korak 1) Kopirajte sljedeći kod u editor.

class ArrayDemo{
     public static void main(String args[]){
        int array[] = new int[7];
        for (int count=0;count<7;count++){
           array[count]=count+1;
       }
       for (int count=0;count<7;count++){
           System.out.println("array["+count+"] = "+array[count]);
       }
      //System.out.println("Length of Array  =  "+array.length);
      // array[8] =10;
      }
}

Korak 2) Spremite, kompajlirajte i pokrenite kod. Promatrajte izlaz

Očekivani rezultat:

array[0] = 1
array[1] = 2
array[2] = 3
array[3] = 4
array[4] = 5
array[5] = 6
array[6] = 7

Korak 3) Ako je x referenca na niz, x.duljina će vam dati duljinu niza.

Odkomentirajte redak #10. Spremite, prevedite i pokrenite kod. Promatrajte izlaz

Length of Array  =  7

Korak 4) Za razliku od C, Java provjerava granicu niza dok pristupa elementu u njemu. Java neće dopustiti programeru da prekorači njegovu granicu.

Odkomentirajte redak #11. Spremite, prevedite i pokrenite kod. Promatrajte izlaz

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8
        at ArrayDemo.main(ArrayDemo.java:11)
Command exited with non-zero status 1

Korak 5) ArrayIndexOutOfBoundsException je bačen. U slučaju C, isti bi kod pokazao neku nepotrebnu vrijednost.

Java Niz: proslijedi po referenci

Nizovi se prosljeđuju funkcijama referencom ili kao pokazivač na
Izvorna. To znači sve što radite s nizom unutar
funkcija utječe na izvornik.

Primjer: Za razumijevanje polja se prosljeđuju referencom

Korak 1) Kopirajte sljedeći kod u editor

class ArrayDemo {
   public static void passByReference(String a[]){
     a[0] = "Changed";
   }
 
   public static void main(String args[]){
      String []b={"Apple","Mango","Orange"};
      System.out.println("Before Function Call    "+b[0]);
      ArrayDemo.passByReference(b);
      System.out.println("After Function Call    "+b[0]);
   }
}

Korak 2) Spremite, prevedite i pokrenite kod. Promatrajte izlaz

Očekivani rezultat:

Before Function Call    Apple
After Function Call    Changed

Višedimenzionalni nizovi

Višedimenzionalni nizovi zapravo su nizovi nizova.

Za deklaraciju višedimenzionalnog niza varijabla, navedite svaki dodatni indeks koristeći drugi skup uglatih zagrada.

Ex: int twoD[ ][ ] = new int[4][5] ;

Kada dodijelite memoriju višedimenzionalnom nizu, morate navesti memoriju samo za prvu (krajnju lijevu) dimenziju.

Preostale dimenzije možete dodijeliti zasebno.

In Java, duljina svakog niza u višedimenzionalnom nizu je pod vašom kontrolom.

Primjer

public class Guru99 {
public static void main(String[] args) {

// Create 2-dimensional array.
  int[][] twoD = new int[4][4];

  // Assign three elements in it.
  twoD[0][0] = 1;
  twoD[1][1] = 2;
  twoD[3][2] = 3;
  System.out.print(twoD[0][0] + " ");
}

}

Očekivani rezultat:

1