logo

Jak inicializovat pole v Javě?

Pole je datová struktura v Javě, která se používá k ukládání datových objektů se stejným datovým typem. Každý prvek v poli má jedinečnou hodnotu indexu. V poli musíme nejprve deklarovat jeho velikost a velikost pole je pevná. V poli můžeme ukládat prvky různých datových typů, jako je celé číslo, řetězec, datum atd. V tomto článku probereme různé způsoby, jak deklarovat a inicializovat pole.

tiskové pole v Javě

Deklarace pole v Javě

Pole je deklarováno pomocí svého datového typu a identifikátoru. V Javě jsou pole deklarována podobným způsobem jako ostatní proměnné, ale při deklaraci pole se přidá další závorka [].



Syntax:

int arr []; int [] arr;>

Zde není uvedena velikost pole, protože odkaz na pole je vytvořen v paměti. Může být také známá jako paměťová adresa pole.

Jak inicializovat pole v Javě?

Po deklaraci pole jej musíme inicializovat hodnotami, jako to musíme udělat s jinými proměnnými. V poli musíme přiřadit více hodnot, takže proces inicializace není tak jednoduchý jako u proměnných. Můžeme inicializovat pole s výchozími nebo nevýchozími hodnotami. Níže jsou uvedeny různé způsoby inicializace pole:



  • Inicializujte pole s výchozími hodnotami
  • Inicializujte pole s jinými než výchozími hodnotami
  • Inicializujte pole pomocí složených závorek { }
  • Inicializace pomocí stream Interface

Inicializujte pole s výchozími hodnotami

V Javě lze pole inicializovat pomocí výchozích hodnot, když je velikost pole deklarována pomocí obdélníkových závorek [ ].

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

Ve výše uvedeném kódu je deklarováno pole o velikosti 20, kde je datovým typem celé číslo. Různé datové typy mají různé výchozí hodnoty, které jsou inicializovány v době deklarace. Pro pole typu integer je výchozí hodnota 0, false je výchozí hodnota pro pole typu boolean a prázdný řetězec je výchozí hodnota pro pole typu string.

Inicializujte pole s jinými než výchozími hodnotami

V Javě můžeme také inicializovat pole s konkrétními hodnotami. K tomu musíme inicializovat každou hodnotu jednu po druhé. Tato metoda je však užitečná pouze pro malé velikosti polí, nikoli pro pole s velkými velikostmi. U velkých polí musíme k inicializaci jiných než výchozích hodnot použít smyčku.



V následujícím příkladu je deklarováno pole typu integer o velikosti 6 a poté je v něm inicializováno 6 jiných než výchozích hodnot.

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

Inicializujte pole pomocí složených závorek { }

Pole lze také inicializovat pomocí složených závorek, kde nemusíme deklarovat velikost pole. Všechny jiné než výchozí hodnoty jsou inicializovány ve složených závorkách, které jsou odděleny čárkou.

V následujícím příkladu je pole typu řetězec inicializováno s jinými než výchozími hodnotami pomocí složených závorek.

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

Inicializace pomocí stream Interface

Pole může být inicializováno pomocí rozhraní proudu, které generuje proud hodnot a poté je převedeno na pole. Níže jsou uvedena tři vstupní rozhraní, která se používají k inicializaci pole typu integer.

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

1. IntStream.range()

Používá se k inicializaci pole celých čísel v daném rozsahu. První parametr v rozsahu bude prvním prvkem pole a ostatní prvky v poli budou větší než tento prvek, ale menší než druhý parametr rozsahu.

2. IntStream.rangeClosed()

Můžeme také použít rangeClosed() namísto rozsah() pokud chceme přidat poslední prvek rozsahu v poli. První parametr v rangeClosed() metoda bude prvním prvkem pole a ostatní prvky v poli budou větší než tento prvek, ale menší než a rovné druhému parametru pole rangeClosed() metoda.

3. IntStream.of()

Tato metoda funguje podobně jako složené závorky, kde musíme zmínit každý prvek samostatně, který chceme přiřadit k poli. V následujícím kódu jsme přiřadili hodnoty k poli pomocí těchto tří rozhraní.

Příklad:

Jáva




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

>

>

Výstup

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