Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.java > #13118
| From | Lothar Kimmeringer <news201705@kimmeringer.de> |
|---|---|
| Newsgroups | de.comp.lang.java |
| Subject | Re: Probleme mit komplexem HashMap |
| Date | 2017-05-13 22:09 +0200 |
| Organization | Organization?! Only chaos here! |
| Message-ID | <1mo3wcc1sp3vo.dlg@kimmeringer.de> (permalink) |
| References | <b5025206-05ee-4b7a-bc90-1998b3d59997@googlegroups.com> |
whofer@sunrise.ch wrote:
> Anmerkung: Es wurde bewusst nur eine einzige List Variable
> valSet verwendet und nicht deren zwei.
Wenn du die gleiche Instanz von List in die Map setzt, brauchst
du dich nicht zu wundern, wenn du ein und die selbe List als
Value des Map-entry erhaelst.
> List<String> valSet = new ArrayList<String>();
>
> valSet.add("Apple");
> valSet.add("Aeroplane");
>
> map.put(1, valSet);
> valSet.clear();
Damit loescht du die Eintraege in der List, die als Value in
der Map enthalten ist. Wuerdest du hier deine Ausgaberoutine
durchfuehren, wuerdes du ein [] als Wert der Liste hinter
Key(1) sehen.
> valSet.add("Bat");
> valSet.add("Banana");
>
> map.put(2, valSet);
Damit setzt du die gleiche Liste, die schon bei Key(1) in der
Map liegt fuer Key(2).
Nachdem du es bewusst so gemacht hast, weiss ich nicht, ob es
viel hilft zu sagen, dass du eine neue Liste erzeugen musst,
statt die eine nur zu leoschen und neu zu befuellen.
Was ist denn dein genauer Anwendungsfall?
Gruesse, Lothar
--
Lothar Kimmeringer E-Mail: spamfang@kimmeringer.de
PGP-encrypted mails preferred (Key-ID: 0x8BC3CD81)
Always remember: The answer is forty-two, there can only be wrong
questions!
Back to de.comp.lang.java | Previous | Next — Previous in thread | Find similar
Probleme mit komplexem HashMap whofer@sunrise.ch - 2017-05-13 06:01 -0700 Re: Probleme mit komplexem HashMap Lothar Kimmeringer <news201705@kimmeringer.de> - 2017-05-13 22:09 +0200
csiph-web