У меня есть переменная списка, созданная следующим образом:
List<Map<String, String>> list = new ArrayList<Map<String, String>>();
В моем приложении Android этот список заполняется.
просто пример:
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);
Я использую list
для отображения результатов в ListView
путем расширения BaseAdapter
и реализации различных методов.
Моя проблема: мне нужно сортировать list
в алфавитном порядке на основе ключа карты name
Вопрос: что такое простой способ сортировки list
в алфавитном порядке на основе ключа карты name?
Кажется, я не могу обернуться вокруг этого. Я выделил каждое имя из каждого Map
в массив String
и отсортировал его (Arrays.sort(strArray);
). Но это не сохраняет другие данные в каждом Map
, поэтому я не слишком уверен, как я могу сохранить другие отображаемые значения