Java中hashmap按key值排序

来源:互联网 发布:上海古玩地摊淘宝市场 编辑:程序博客网 时间:2024/05/23 16:54
Map map = new HashMap();  
map.put("4",   "a");  
map.put("2",   "b");  
map.put("1",   "c");  
map.put("3",   "d"); 
  
第一种方法: 
Java代码  收藏代码
  1. Object[] key =  map.keySet().toArray();    
  2. Arrays.sort(key);    
  3.   
  4. for(int i = 0; i<key.length; i++)  
  5. {    
  6.      System.out.println(map.get(key[i]));    
  7. }  

第二种方法: 
Java代码  收藏代码
  1. List arrayList = new ArrayList(map.entrySet());  
  2.   
  3. Collections.sort(arrayList, new Comparator()   
  4. {  
  5.   public int compare(Object arg1, Object arg2)   
  6.  {  
  7.     Map.Entry obj1 = (Map.Entry) arg1;  
  8.     Map.Entry obj2 = (Map.Entry) arg2;  
  9.     return (obj1.getKey()).toString().compareTo(obj2.getKey());  
  10.   }  
  11. });  
  12. //将HASHMAP中的数据排序  
  13. for (Iterator iter = arrayList.iterator(); iter.hasNext();)   
  14. {  
  15.    Map.Entry entry = (Map.Entry)iter.next();  
  16.    String  key = (String)entry.getKey();  
  17.    System.out.println(map.get(key));    
  18. }  
0 0
原创粉丝点击