HashMap Lsite gibt die sachen nicht aus wie gewollt.

triade

Aktives Mitglied
Hallo, weiß wer warum die Liste nicht in der reinfolge ausgegeben wird wie ich sie im code abgespeichert habe?
ich habe ich code erst Monate, dann Wochen , dann Tage und zuletzt Stunden aufgezählt. Dies tat ich mit dem wunsch das alles auch in dieser reinfolge ausgegeben wird. Allerdings sind die letzten beide (also Tage und Stunden) vertauscht. weiß wer woran dass liegt?
Java:
HashMap<String, Long> werte = new HashMap<String, Long>();

         werte.put("Monate", monate);
         werte.put("Wochen", wochen);
         werte.put("Tage", tage);
         werte.put("Stunden", stunden);

        for (String key : werte.keySet()) {
        long value = werte.get(key);
        System.out.println(key + ": " + value);
        }
 
Eine HashMap hat keine Reihenfolge. Wenn Du eine Reienfolge benötigst, dann wäre z.B. eine TreeMap sinnvoll.

In dem Code nutzt Du eigentlich keine Map Funktionalität, daher wäre eine List von Elementen, die dann Name und wert oder so haben, ausreichend.
 

Zurück
Oben