ArrayList v Javě je jednou z nejoblíbenějších datových struktur, které vám umožňují ukládat a spravovat seznamy položek. Často je však potřeba ukládat páry "klíč-hodnota" uvnitř ArrayList. K tomu se používají sbírky typu Map, které nám umožňují operovat s daty podle klíče.
V Javě je možnost přidat sbírku typu Map do ArrayList vytvořením seznamu obsahujícího různé objekty. K tomu je nutné sloučit dvě sbírky, které seskupují data na různých principech. Můžeme například vytvořit ArrayList obsahující různé značky automobilů a také sbírku typu Map, ve které bude každá značka odpovídat konkrétní barvě.
Pro začátek musíme vytvořit ArrayList pomocí příkazu new a v závorkách v rohu určit, jaké typy dat budou v seznamu uloženy. Například: ArrayList> cars = new ArrayList<>();. Poté můžeme přidat prvky do ArrayList pomocí metody add (). Chcete-li přidat prvek typu Map, musíme nejprve vytvořit nový objekt HashMap a poté jej přidat do seznamu.
Vytvoření ArrayList
V Java je ArrayList dynamické pole, které může obsahovat objekty různých typů. Proces vytváření ArrayList zahrnuje následující kroky:
-
Importovat třídu ArrayList z balíčku java.util:
import java.util.ArrayList;
ArrayList имя_списка = new ArrayList<>();
имя_списка.add(элемент);
имя_списка.get(индекс);
имя_списка.set(индекс, новый_элемент);
имя_списка.remove(индекс);
имя_списка.size();
Nyní, když znáte základy vytváření ArrayList v Javě, můžete jej začít používat k ukládání a správě vašich objektů typu Map a mnoha dalších.
Vytvoření Map
Příklad vytvoření prázdné mapy:
| Realizace | Příklad |
|---|---|
| HashMap | Map map = new HashMap<>(); |
| TreeMap | Map map = new TreeMap<>(); |
| LinkedHashMap | Map map = new LinkedHashMap<>(); |
Příklad vytváření Map s přednastavenými páry klíč-hodnota:
| Realizace | Příklad |
|---|---|
| HashMap | Map map = new HashMap<>(); map.put (Klíč1, 1); map.put (Klíč2, 2); |
| TreeMap | Map map = new TreeMap<>(); map.put (Klíč1, 1); map.put (Klíč2, 2); |
| LinkedHashMap | Map map = new LinkedHashMap<>(); map.put (Klíč1, 1); map.put (Klíč2, 2); |
Nyní máte základní představu o vytvoření Map v Javě. Můžete si vybrat implementaci, která nejlépe vyhovuje vašim potřebám, a začít používat Map k ukládání dat ve vaší aplikaci.
Přidání Map do ArrayList
Přidání objektu Map do ArrayList lze provést pomocí metody add () třídy ArrayList. Níže je uveden příklad kódu:
ArrayList> list = new ArrayList<>();Map map = new HashMap<>();map.put("ключ1", "значение1");map.put("ключ2", "значение2");list.add(map);
V tomto příkladu je vytvořen objekt ArrayList s datovým typem Map. Poté se vytvoří objekt Map a přidají se hodnoty pomocí metody put() . Nakonec je vytvořený objekt Map přidán do ArrayList pomocí metody add (). ArrayList nyní obsahuje jeden prvek-objekt Map, který obsahuje dva záznamy.
Přidání Map do ArrayList vám umožní sloučit více map do jedné sbírky pro pohodlnější ukládání a používání dat. To může být užitečné například při práci s různými sadami dat nebo při přenosu dat mezi různými částmi programu.
Výsledkem provedení příkladu kódu výše bude ArrayList obsahující jeden objekt Map s hodnotami klíč1 a hodnota1 a klíč2 a hodnota2.
Získání prvku Map z ArrayList
K získání prvku Map z ArrayList v Javě lze použít metodu get ().
Nejprve je nutné určit index prvku v poli, které Map obsahuje, a poté použít tento index v metodě get(). Například:
Map získánymar = list.get(0);
Výsledkem je, že proměnná výslednemar bude obsahovat první položku seznamu seznamů, která je objektem Map.
Získánymar lze pak použít k přístupu k datům uvnitř tohoto objektu Map.
Změna prvku Map v ArrayList
Chcete-li změnit prvek Map v ArrayList v Javě, můžete použít metody třídy ArrayList, jako je get() a set().
Nejprve použijte metodu get () k získání položky Map podle indexu v ArrayList. Například:
ArrayList> arrayList = new ArrayList<>();Map map = new HashMap<>();map.put("ключ", "значение");arrayList.add(map);Map полученныйMap = arrayList.get(0);System.out.println(полученныйMap);
Poté můžete změnit prvek Map a použít metodu set() k uložení změn v ArrayList:
полученныйMap.put("новый ключ", "новое значение");arrayList.set(0, полученныйMap);System.out.println(arrayList);
Tímto způsobem můžete změnit prvek Map v ArrayList v Javě.