Win a copy of Re-engineering Legacy Software this week in the Refactoring forum
or Docker in Action in the Cloud/Virtualization forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Hashmap in java

 
Rajendra Prakash
Ranch Hand
Posts: 293
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi friends, i need sample code to retrieve objects from HashMap in ascending order . Thanks Prakash
 
Sebastian Janisch
Ranch Hand
Posts: 1183
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I suppose you want to sort by the keys which are Strings.

You cannot directly sort a HashMap, it's not made for that. The only workaround would be extracting the keySet() and sorting that, then iterating over the keySet.

But since there is a TreeMap, which does sorting for you, you can simply use that.
 
Rob Spoor
Sheriff
Pie
Posts: 20495
54
Chrome Eclipse IDE Java Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
As Sebastian said, HashMap does not preserve any order at all. You can use TreeMap which uses Comparable's compareTo method or Comparator's compare method for determining the order, or LinkedHashMap which uses insertion order. The latter can be changed to be the last-accessed order instead by specifying this in the constructor.
 
Salil Vverma
Ranch Hand
Posts: 257
Hibernate Oracle Spring
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You can use this sample code -



The result of this program is {1=Testing, 10=Sample, 20=First, 30=Second}.
In this case I have used Integer as a key to it is giving the result in ascending order by key. But if you are using any other object they you shall have to check that the object has implemented the comparable interface in it

Regards
Salil Verma



 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic