I have a List of HashMap such as below
ArrayList l = new ArrayList ();
HashMap m = new HashMap ();
m.add("site_code","AL");
m.add("site_name","Apple");
l.add(m);
m = new HashMap();
m.add("site_code","JL");
m.add("site_name","Cat");
l.add(m);
m = new HashMap();
m.add("site_code","PL");
m.add("site_name","Banana");
l.add(m)
I’d like to sort the list based on site_name. So in the end it would be sorted as.
Apple, Banana, Cat
I was trying something like this:
Collections.sort(l, new Comparator(){
public int compare(HashMap one, HashMap two) {
//what goes here?
}
});
If you make your collections generic, it will end up looking about like this:
If you can’t use generics because you’re stuck on a 1.4 or earlier platform, then you’ll have to cast the
get‘s toString.(Also, as a matter of style, I’d prefer declaring the variables as
ListandMaprather thanArrayListandHashMap. But that’s not relevant to the question.)