无序hashset与hashmap让其有序

今天迭代hashmap时,hashmap并不能按照put的顺序,迭代输出值。用下述方法可以:

 

HashMap<String,String> hashmap = new LinkedHashMap<String,String>();

 

 

HashSet的内容如何排序

方法一:

把HashSet保存在ArrayList里,再用Collections.sort()方法比較

 

  private void doSort(){  
  
        final HashSet<Integer> va = new HashSet<Integer>();  
  
        va.add(2007111315);  
  
        va.add(2007111314);  
  
        va.add(2007111318);  
  
        va.add(2007111313);  
  
        final List<Integer> list = new ArrayList<Integer>();  
  
        for(final Integer value : va){  
  
            list.add(value);  
  
        }  
  
        Collections.sort(list);  
  
        System.out.println(list);  
  
    }  

 

方法二:

把这个HashSet做为构造参数放到TreeSet中就可以排序了

 

final TreeSet ts = new TreeSet(va);  
  
       ts.comparator();  
  
       System.out.println(ts); 

 

posted @ 2019-02-26 11:16  水木神舟10  阅读(374)  评论(0编辑  收藏  举报