Java: Kontejnery

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
(Procházení kontejneru: Přidány další příklady a komentář.)
(Přidána tabulka s přehledem syntaxe.)
Řádka 39: Řádka 39:
  
 
; Příklady:
 
; Příklady:
; 1.  
+
; 1. Vypište jména všech osob v kontejneru instancí třídy <code>Osoba</code>
* Vypíšte jména všech osob v kontejneru instancí třídy <code>Osoba</code>
+
 
  ArrayList<Osoba> kontejner = new ArrayList<>();
 
  ArrayList<Osoba> kontejner = new ArrayList<>();
 
  '''for''' (Osoba o : kontejner) {
 
  '''for''' (Osoba o : kontejner) {
Řádka 55: Řádka 54:
 
  }
 
  }
 
  System.out.println(vysledek);
 
  System.out.println(vysledek);
 +
 +
 +
 +
== Přehled syntaxe &mdash; srovnání s polem ==
 +
 +
{| class="wikitable"
 +
|-
 +
! !! <code>ArrayList</code> !! Pole
 +
|-
 +
| Vytvoření kontejneru
 +
|
 +
<code>import java.util.ArrayList;<br />
 +
''...''<br/>
 +
ArrayList&lt;Auto&gt; kontejner = new ArrayList&lt;&gt;();</code>
 +
| <code>Auto pole[] = new Auto[''5'']</code>
 +
|-
 +
| Uložení prvku || <code>kontejner.set(''5'', new Auto())</code><br /><code>kontejner.add(new Auto())</code> || <code>pole[''5''] = new Auto()</code>
 +
|-
 +
| Vyzvednutí prvku || <code>kontejner.get(''5'')''.startuj()''</code> || <code>pole[''5''].''startuj()''</code>
 +
|-
 +
| Zjištění počtu prvků || <code>kontejner.size()</code> || <code>pole.length</code>
 +
|-
 +
| Odstranění prvku    || <code>kontejner.remove(''auto'');</code><br /><code>kontejner.remove(''3'');</code> ||         
 +
|-
 +
| Průchod foreach
 +
|
 +
for (Auto a : kontejner) {
 +
    a.jed();
 +
}
 +
|
 +
for (Auto a : pole) {
 +
      a.jed();
 +
}
 +
|-
 +
|}
 +
  
 
== Úkoly ==
 
== Úkoly ==

Verze z 21. 2. 2017, 09:57


Obsah

Kontejner

Práce s kontejnerem ArrayList

Vytvoření kontejneru
ArrayList<Predmet> kontejner = new ArrayList<Predmet>();
ArrayList<Predmet> kontejner = new ArrayList<>();


Uložení objektu
kontejner.add(predmet);
Získání objektu
Predmet kontejner.get(poradi);
Odstranění objektu z kontejneru
kontejner.remove(poradi);
kontejner.remove(predmet);
kontejner.clear();
Zjištění počtu prvků v kontejneru
int kontejner.size();
boolean kontejner.isEmpty();


Procházení kontejneru

ArrayList<Prvek> kontejner = new ArrayList<>();
for (Prvek nazevPromenne : kontejner) {
   ... Práce s konkrétním prvkem (je v proměnné nazevPromenne)...
}
Příklady
1. Vypište jména všech osob v kontejneru instancí třídy Osoba
ArrayList<Osoba> kontejner = new ArrayList<>();
for (Osoba o : kontejner) {
   System.out.println(o.getJmeno());
}
2. Sečtěte hodnoty všech prvků v poli
ArrayList<Ucet> ucty = new ArrayList<>();
int vysledek = 0;
for (Ucet u : ucty) {
   vysledek += u.getStav();
}
System.out.println(vysledek);


Přehled syntaxe — srovnání s polem

ArrayList Pole
Vytvoření kontejneru

import java.util.ArrayList;
...
ArrayList<Auto> kontejner = new ArrayList<>();

Auto pole[] = new Auto[5]
Uložení prvku kontejner.set(5, new Auto())
kontejner.add(new Auto())
pole[5] = new Auto()
Vyzvednutí prvku kontejner.get(5).startuj() pole[5].startuj()
Zjištění počtu prvků kontejner.size() pole.length
Odstranění prvku kontejner.remove(auto);
kontejner.remove(3);
Průchod foreach
for (Auto a : kontejner) { 
    a.jed(); 
}
for (Auto a : pole) { 
     a.jed(); 
}


Úkoly

Úkol 1
Úkol 2
Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje