V tomto kurzu se naučíme pracovat s poli v Javě. Naučíme se deklarovat, inicializovat a přistupovat k prvkům pole pomocí příkladů.
V počítačovém programování je pole kolekce podobných typů dat. Například pokud chceme uložit jména 100 lidí, můžeme vytvořit pole typu řetězce, které dokáže uložit 100 jmen.
String() array = new String(100);
Počet hodnot v poli Java je pevný. To znamená, že výše uvedené pole nemůže uložit více než 100 prvků.
Jak deklarovat pole v Javě?
V Javě můžeme takto deklarovat pole.
dataType() arrayName;
- datový typ - může být primitivní datové typy, jako je
int
,char
,double
,byte
, atd. nebo v jazyce Java objektů - arrayName - je to identifikátor
Například,
double() data;
Data jsou pole, které může obsahovat hodnoty typu double
.
Ale kolik prvků může toto pole uspořádat?
Dobrá otázka! Abychom definovali počet prvků, které může pole obsahovat, musíme přidělit paměť pro pole v Javě. Například,
// declare an array double() data; // allocate memory data = new Double(10);
Zde může pole uložit 10 prvků. Můžeme také říci, že velikost nebo délka pole je 10.
V Javě můžeme deklarovat a přidělit paměť pole v jediném příkazu. Například,
double() data = new double(10);
Jak inicializovat pole v Javě?
V Javě můžeme během deklarace inicializovat pole. Například,
//declare and initialize and array int() age = (12, 4, 5, 2, 5);
Tady jsme vytvořili pole s názvem age a inicializovali ho hodnotami uvnitř složených závorek.
Všimněte si, že jsme nezadali velikost pole. V tomto případě kompilátor Java automaticky určí velikost spočítáním počtu prvků v poli (tj. 5).
V poli Java je každé paměťové místo spojeno s číslem. Číslo je známé jako index pole. Můžeme také inicializovat pole v Javě pomocí indexového čísla. Například,
// declare an array int() age = new int(5); // initialize array age(0) = 12; age(1) = 4; age(2) = 5;…

Poznámka :
- Indexy polí vždy začínají od 0. To znamená, že první prvek pole je na indexu 0.
- Pokud je velikost pole n, pak bude poslední prvek pole v indexu n-1.
Jak přistupovat k prvkům pole v Javě?
K prvku pole můžeme přistupovat pomocí indexového čísla. Zde je syntaxe pro přístup k prvkům pole,
// access array elements array(index)
Podívejme se na příklad přístupu k prvkům pole pomocí indexových čísel.
Příklad: Přístup k prvkům pole
class Main ( public static void main(String() args) ( // create an array int() age = (12, 4, 5, 2, 5); // access each array elements System.out.println("Accessing Elements of Array:"); System.out.println("First Element: " + age(0)); System.out.println("Second Element: " + age(1)); System.out.println("Third Element: " + age(2)); System.out.println("Fourth Element: " + age(3)); System.out.println("Fifth Element: " + age(4)); ) )
Výstup
Přístup k prvkům pole: První prvek: 12 Druhý prvek: 4 Třetí prvek: 5 Čtvrtý prvek: 2 Pátý prvek: 5
Ve výše uvedeném příkladu si všimněte, že pro přístup ke každému prvku pole používáme indexové číslo.
Můžeme použít smyčky pro přístup ke všem prvkům pole najednou.
Looping Through Array Elements
V Javě můžeme také procházet každý prvek pole. Například,
Příklad: Použití pro smyčku
class Main ( public static void main(String() args) ( // create an array int() age = (12, 4, 5); // loop through the array // using for loop System.out.println("Using for Loop:"); for(int i = 0; i < age.length; i++) ( System.out.println(age(i)); ) ) )
Výstup
Použití pro smyčku: 12 4 5
Ve výše uvedeném příkladu používáme smyčku for v Javě k iteraci každým prvkem pole. Všimněte si výrazu uvnitř smyčky,
age.length
Tady používáme length
vlastnost pole k získání velikosti pole.
Můžeme také použít smyčku for-each k iteraci prvky pole. Například,
Příklad: Použití smyčky for-each
class Main ( public static void main(String() args) ( // create an array int() age = (12, 4, 5); // loop through the array // using for loop System.out.println("Using for-each Loop:"); for(int a : age) ( System.out.println(a); ) ) )
Výstup
Použití pro každou smyčku: 12 4 5
Příklad: Vypočítat součet a průměr prvků pole
class Main ( public static void main(String() args) ( int() numbers = (2, -9, 0, 5, 12, -25, 22, 9, 8, 12); int sum = 0; Double average; // access all elements using for each loop // add each element in sum for (int number: numbers) ( sum += number; ) // get the total number of elements int arrayLength = numbers.length; // calculate the average // convert the average from int to double average = ((double)sum / (double)arrayLength); System.out.println("Sum = " + sum); System.out.println("Average = " + average); ) )
Výstup :
Součet = 36 Průměr = 3,6
Ve výše uvedeném příkladu jsme vytvořili řadu pojmenovaných čísel. for… each
Smyčku jsme použili pro přístup ke každému prvku pole.
Uvnitř smyčky počítáme součet každého prvku. Všimněte si řádku,
int arrayLength = number.length;
Zde používáme atribut délky pole k výpočtu velikosti pole. Poté vypočítáme průměr pomocí:
average = ((double)sum / (double)arrayLength);
Jak vidíte, převádíme int
hodnotu na double
. Tomu se v Javě říká casting typu. Chcete-li se dozvědět více o psaní na stroji, navštivte stránku Java Type Casting.
Vícedimenzionální pole
Pole, která jsme dosud zmínili, se nazývají jednorozměrná pole. V Javě však můžeme deklarovat vícerozměrná pole.
Vícerozměrné pole je pole polí. To znamená, že každý prvek vícerozměrného pole je pole samotné. Například,
double()() matrix = ((1.2, 4.3, 4.0), (4.1, -1.1) );
Zde jsme vytvořili vícerozměrné pole s názvem matice. Jedná se o dvourozměrné pole. Chcete-li se dozvědět více, navštivte vícerozměrné pole Java.
Doporučené četby
- Pole Java Copy Array
- Program Java pro tisk pole
- Program Java pro zřetězení dvou polí
- Java ArrayList do Array a Array do ArrayList
- Dynamické pole Java