I have a list variable created like this:
List<Map<String, String>> list = new ArrayList<Map<String, String>>();
In my Android application, this list gets populated.
just an example:
Map<String, String> map1 = new HashMap<String, String>();
map.put("name", "Josh");
...
Map<String, String> map2 = new HashMap<String, String>();
map.put("name", "Anna");
...
Map<String, String> map3 = new HashMap<String, String>();
map.put("name", "Bernie");
...
list.add(map1);
list.add(map2);
list.add(map3);
I am using list
to show results in a ListView
by extending BaseAdapter
and implementing the various methods.
My problem: I need to sort list
in alphabetical order based on the map's key name
Question: What is a simple way to sort list
in alphabetical order based on the map's key name?
I can't seem to wrap my head around this. I have extracted each name from each Map
into a String
array, and sorted it(Arrays.sort(strArray);
). But that doesn't preserve the other data in each Map
, so i'm not too sure how i can preserve the other mapped values
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…