Java: Práce s poli
Z MiS
(Rozdíly mezi verzemi)
(→Přístup k prvkům pole: Přidán příklad vytvoření všech) |
(→Přístup k prvkům pole: Doplněn cyklus foreach a odkazy na Cykly a Java:Kontejnery.) |
||
Řádka 36: | Řádka 36: | ||
if (pole[5] > pole[4]) System.out.println("Chyba!"); | if (pole[5] > pole[4]) System.out.println("Chyba!"); | ||
+ | |||
+ | Prvky můžeme samozřejmě procházet v [[Cykly|cyklu]] podobně jako [[Java: Kontejnery|kontejnery]]: | ||
Zbozi pole[] = new Zbozi[15]; | Zbozi pole[] = new Zbozi[15]; | ||
− | for (int i = 0; i < | + | for (int i = 0; i < pole[[#Zjištění počtu prvků v poli|.length]]; i++) { pole[i] = new Zbozi(); } |
+ | |||
+ | int celkem = 0; | ||
+ | for (Zbozi z : pole) { celkem += z.getCena(); } | ||
== Zjištění počtu prvků v poli == | == Zjištění počtu prvků v poli == |
Verze z 10. 2. 2017, 10:18
Obsah |
K čemu je pole?
- Ukládáme více prvků (proměnných) stejného datového typu.
- K jednotlivým prvkům přistupujeme pomocí čísel (indexů). V jiných jazycích (PHP) lze jako označení prvků (index) použít i textové hodnoty atd.).
- K prvkům pak můžeme snadno přistupovat například v cyklu.
Deklarace pole
Chceme-li vytvořit proměnnou/atribut typu pole, píšeme:
datovyTyp nazevPromenne[];
- Příklad
int pole[];
Zatím se vytvoří pouze odkaz na pole, tedy jedna proměnná, která slouží jako odkaz na pole čísel.
Vytvoření pole
Paměť pro všechny prvky pole se vyhradí teprve příkazem new:
nazevPromenne = new datovyTyp[pocetPolozek];
- Př
pole = new int[100];
int pocet = Konfigurace.getPocetPrvku(); pole = new int[pocet];
Zakaznik data = new Zakaznik[100];
Přístup k prvkům pole
Chci-li pracovat s konkrétním prvkem pole, použiji zápis:
nazevPromenne[poziceVPoli];
Prvky jsou číslované od 0!!!
- Příklady
System.out.println(pole[5]);
pole[5] = 7;
if (pole[5] > pole[4]) System.out.println("Chyba!");
Prvky můžeme samozřejmě procházet v cyklu podobně jako kontejnery:
Zbozi pole[] = new Zbozi[15]; for (int i = 0; i < pole.length; i++) { pole[i] = new Zbozi(); } int celkem = 0; for (Zbozi z : pole) { celkem += z.getCena(); }
Zjištění počtu prvků v poli
Každé pole má vlastnost length
, která reprezentuje počet prvků v poli.
nazevPromenne.lenght
- Př
for (int i = 0; i < pole.length; i++) { ... }
Pole objektů
V poli můžeme ukládat skalární datové typy, nebo objekty. Pak je syntaxe následující:
Point body[]; // deklarace pole (vytvoření odkazu) body = new Point[200]; // vytvoření pole (obsazení paměti pro odkazy na objekty) body[5] = new Point(8, 7); // přiřazení objektu na konkrétní pozici // přístup k objektům a jejich vlastnostem: body[5].x += 7; System.out.println(body[5].x);