Java中文简单排序

为啥说是简单排序呢,因为这个方法只支持中文排序,不支持中英文混合排序。如果要实现中英文混合排序需要引入pinyin4j-2.5.0.jar

ArrayList list = new ArrayList();
        list.add("中国");
        list.add("加拿大");
        list.add("5577.com");
        list.add("美国");
        list.add("A");
        list.add("more");
        list.add("啊");
        Comparator cmp = new ChineseCharComp();

        Collections.sort(list, cmp);
        Iterator iter = list.iterator();

        while (iter.hasNext()) {
            System.out.println(iter.next() + "=");
        }


 

public static class ChineseCharComp implements Comparator {
        public int compare(Object o1, Object o2) {
            Collator myCollator = Collator.getInstance(java.util.Locale.CHINA);
            if (myCollator.compare(o1, o2) < 0)
                return -1;
            else if (myCollator.compare(o1, o2) > 0)
                return 1;
            else
                return 0;
        }
    }


 

输出结果:

5577.com=
A=
more=
啊=
加拿大=
美国=
中国=

你可能感兴趣的:(Java中文简单排序)