import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.TreeMap;
public class SortDemo3TreeMap {
public static void main(String[] args) {
MyCmp cmp=new MyCmp();
Map map=new TreeMap(cmp);
//cmp.setMap(map);
map.put(1, "abc");
map.put("tom", new Person("tom",21));
map.put("jack",200);
map.put("1002", new Person("张三",22));
map.put("1000", new Person("李四",21));
Set entrySet =map.entrySet();
Iterator it=entrySet.iterator();
while(it.hasNext()){
Entry en=(Entry) it.next();
System.out.println(en.getKey()+","+en.getValue());
}
}
}
import java.util.Comparator;
import java.util.Map;
public class MyCmp implements Comparator{
// private Map map;
// public Map getMap() {
// return map;
// }
// public void setMap(Map map) {
// this.map = map;
// }
@Override //o1为当前新添加的元素, o2为集合中原来已经存在的元素
public int compare(Object o1, Object o2) {
/*
if(o1 instanceof Person && o2 instanceof Person){
...//根据工程需要决定先后顺序
}
if(o1 instanceof String && o2 instanceof Person){
...//根据工程需要决定先后顺序
}
*/
//return -1;
return o1.toString().compareTo(o2.toString());
}
}
import java.util.Comparator;
public class MyCmp implements Comparator{
// private Map map;
// public Map getMap() {
// return map;
// }
// public void setMap(Map map) {
// this.map = map;
// }
@Override
public int compare(Object o1, Object o2) {
/*
if(o1 instanceof Person && o2 instanceof Person){
...//根据工程需要决定先后顺序
}
if(o1 instanceof String && o2 instanceof Person){
...//根据工程需要决定先后顺序
}
*/
//return -1;
return o1.toString().compareTo(o2.toString());
}
}