大家都知道treemap是有序的map,不过默认是 自然序,有时需要按照添加顺序进行排序的map,其实只需要加入一个自定义的 Comparator即可 、
使用的时候方法:
new TreeMap<String,String>(new DftComparetor())
- static class DftComparetor implements Comparator<String>{
- List<String> l = new LinkedList<String>();
- public int compare(String o1, String o2) {
- int index1 = l.indexOf(o1);
- int index2 = l.indexOf(o2);
- if(index1 == -1){
- l.add(o1);
- index1 = l.size() -1;
- }
- if(index2 == -1){
- l.add(o1);
- index1 = l.size() -1;
- }
- return index1 - index2;
- }
- }
new TreeMap<String,String>(new DftComparetor())