06. december 2008 - 17:37
Der er
8 kommentarer og 1 løsning
Is there any nice class for this situation?
Hello guys! I have an problem with a HashMap when I iterate over the keys. Below is an example cod: package test; import java.util.HashMap; import java.util.Iterator; import java.util.Set; public class ScrapTest { /** * @param args */ @SuppressWarnings("unchecked") public static void main(String[] args) { HashMap hashmap = new HashMap(); hashmap.put("a", "object 1"); hashmap.put("c", "object 2"); hashmap.put("b", "object 3"); hashmap.put("f", "object 4"); hashmap.put("g", "object 5"); hashmap.put("e", "object 6"); Set keys = hashmap.keySet(); Iterator iterator = keys.iterator(); while( iterator.hasNext() ) { String key = (String)iterator.next(); System.out.println(key); } } } This gave me this output: f g e b c a I want to get this output (the order that they are inserted): a c b f g e Is there a way to manage this? Perhaps whit some other class? So if you guys got any ideas please let me know! Best regards Fredrik
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
06. december 2008 - 17:41
#1
The order of entries in a HashMap is somewhat Random. If you need both direct lookup and maintaining of insert order, then you can: have the same objects on both a HashMap and an ArrayList.
06. december 2008 - 18:38
#2
SortedMap map = new TreeMap();
06. december 2008 - 19:01
#3
Der skal vel lidt mere til fordi: natural order != insert order
06. december 2008 - 19:13
#4
ja ok den del fik jeg ikke lige fat i :)
06. december 2008 - 19:17
#5
LinkedHashMap må da kunne bruges så.
06. december 2008 - 19:19
#6
Jeps.
06. december 2008 - 21:01
#7
Hello Guys! Thanks alot! The LinkedHashMap seems to do the work perfectly for me! Please give svar so can reward you mates! Best regards Fredrik
06. december 2008 - 22:55
#8
Simons
07. december 2008 - 13:23
#9
ok
Kurser inden for grundlæggende programmering