TreeMap详解

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);

    }
}


版权声明:本文为weixin_52385232原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。