HashMap排序是数据结构与算法中常见的一种排序算法。本文即以Android平台为例来实现该算法。
具体代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<String, Integer>();
map.put( "lisi" , 5 );
map.put( "lisi1" , 1 );
map.put( "lisi2" , 3 );
map.put( "lisi3" , 9 );
List<Map.Entry<String, Integer>> infoIds = new ArrayList<Map.Entry<String, Integer>>(
map.entrySet());
System.out.println( "--------------排序前--------------" );
for ( int i = 0 ; i < infoIds.size(); i++) {
String id = infoIds.get(i).toString();
System.out.println(id);
}
// 排序
Collections.sort(infoIds, new Comparator<Map.Entry<String, Integer>>() {
public int compare(Map.Entry<String, Integer> o1,
Map.Entry<String, Integer> o2) {
return ( o1.getValue()-o2.getValue());
}
});
System.out.println( "--------------排序后--------------" );
for ( int i = 0 ; i < infoIds.size(); i++) {
Entry<String,Integer> ent=infoIds.get(i);
System.out.println(ent.getKey()+ "=" +ent.getValue());
}
}
|
希望本文所述的HashMap排序算法能对大家的算法学习有所帮助。