Pat*_*man 4 java android arraylist
我在地图中保存产品的详细信息,并添加ArrayList <HashMap <String,String >>并设置为自定义列表适配器.我需要按价格对价值进行排序.怎么实现呢?提前致谢.
Eld*_*abu 18
请使用以下代码:
ArrayList< HashMap< String,String >> arrayList=populateArrayList();
Collections.sort(arrayList, new Comparator<HashMap< String,String >>() {
@Override
public int compare(HashMap<String, String> lhs,
HashMap<String, String> rhs) {
// Do your comparison logic here and retrn accordingly.
return 0;
}
});
Run Code Online (Sandbox Code Playgroud)
你可以实现一个Comparator<Map<String, String>>或Comparator<HashMap<String, String>>
如何对HashMaps的ArrayList分别保存几个键值对? 很好地回答:
class MapComparator implements Comparator<Map<String, String>>{
private final String key;
public MapComparator(String key){
this.key = key;
}
public int compare(Map<String, String> first,
Map<String, String> second){
// TODO: Null checking, both for maps and values
String firstValue = first.get(key);
String secondValue = second.get(key);
return firstValue.compareTo(secondValue);
}
}
...
Collections.sort(arrayListHashMap, new MapComparator("value"));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10321 次 |
| 最近记录: |