
Java - List který se napojený na druhý list.
Dobrý den, mam otázka zdali se nedá nějakým si způsobem spojít 2 listy, (né spojit, nemůžu najít v hodné slovo) proto uvedu příklad
//P je nějaká třída.
HashMap<String, P> a = new HashMap<String, P>();
a.put("pavel", new P());
a.put("jan", new P());
a.put("eliška", new P());
V druhé třídě definuju: // Tento list by měl navazovat na list a a upravovat jeho hodnoty
HashMap<String, P> b = new HashMap<String, P>();
b.put("jan", new P());
a obashuje Jan, b Obsahuje jan
Když něco upravím v B, upraví se to i v A. Výhoda tedy bude že bude obsahovat pouze jména ty která potřebuji.
Nevíte o něčem takovém? Mnoho by mi to usnadnilo práci, jde o to že mam v main list s uživateli, a při každé nové hře potřebuji tahat uživatele které jsou v té hře, tudiž bych je rovnou přidával na druhý list a vyřešil tak zároveň optimalizaci
Pak mě leda napadá udělat něco takového // Experiment
HashMap<String, P> users = new HashMap<String, P>();
users.put("jan", new P());
List<String> arenaUsers = new ArrayList<String>();
arenaUsers.add("jan");
for (String user : arenaUsers) {
for (P p : users.get(user)) {
System.out.println(p.getName());
}
}
Ale zase tu nebude optimalizace s iterací.
Tak už jsem si poradil, nejdřív koukám jako jelen a pak si dávám facky za ten kód, pač se snažím z jednotného čísla vytáhnout množné číslo, druhá smyčka tam už nemá vůbec být :)