How to sort HashMap based on Date?

2019-01-27 21:42发布

问题:

I trying to sort this HashMap based on date in keys

My Hash map:

Map<Date, ArrayList> m = new HashMap<Date, ArrayList>();

回答1:

Use a TreeMap instead of HashMap. As Date already implements Comparable, it will be sorted automatically on insertion.

Map<Date, ArrayList> m = new TreeMap<Date, ArrayList>();

Alternatively, if you have an existing HashMap and want to create a TreeMap based on it, pass it to the constructor:

Map<Date, ArrayList> sortedMap = new TreeMap<Date, ArrayList>(m);

See also:

  • Java tutorials - Map implementations
  • Java tutorials - Object ordering


回答2:

Use TreeMap instead of HashMap to store the data,it will be sorted automatically.