TreeMap详解
使用无参构造器创建对象,是无序的(没有排序)
public class Demo07 {
public static void main(String[] args) {
TreeMap treeMap = new TreeMap();
treeMap.put("jack", "杰克");
treeMap.put("tom", "汤姆");
treeMap.put("kristina", "克瑞斯");
treeMap.put("smith", "斯密斯");
treeMap.put("abc", "帅哥");
System.out.println(treeMap);
}
}
按照传入的 k(String) 的大小进行排序
public class Demo07 {
public static void main(String[] args) {
TreeMap treeMap = new TreeMap(new Comparator() {
@Override
public int compare(Object o1, Object o2) {
return ((String)o1).compareTo((String)o2);
}
});
treeMap.put("jack", "杰克");
treeMap.put("tom", "汤姆");
treeMap.put("kristina", "克瑞斯");
treeMap.put("smith", "斯密斯");
treeMap.put("abc", "帅哥");
System.out.println(treeMap);
}
}
将 ((String) o1).compareTo((String) o2); 里的o1和o2位置调换
按照传入的 k(String) 的长度大小排序
public class Demo07 {
public static void main(String[] args) {
TreeMap treeMap = new TreeMap(new Comparator() {
@Override
public int compare(Object o1, Object o2) {
return ((String)o1).length()-((String)o2).length();
}
});
treeMap.put("jack", "杰克");
treeMap.put("tom", "汤姆");
treeMap.put("kristina", "克瑞斯");
treeMap.put("smith", "斯密斯");
//长度相同,key不变,替换value
treeMap.put("abc", "帅哥");
System.out.println(treeMap);
}
}