List<String> list=Lists.newArrayList("北京","天津","上海");
Comparator cmp = Collator.getInstance(java.util.Locale.CHINA);
Collections.sort(list,cmp);
输出结果数字排在最前,英文字母其次,汉字则按照拼音进行排序。
Collator
Collator 类执行区分语言环境的 String 比较。使用此类可为自然语言文本构建搜索和排序例程。
Collator 是一个抽象基类。其子类实现具体的整理策略。Java 平台目前提供了 RuleBasedCollator 子类,它适用于很多种语言。还可以创建其他子类,以处理更多的专门需要。
与其他区分语言环境的类一样,可以使用静态工厂方法 getInstance 来为给定的语言环境获得适当的 Collator 对象。如果需要理解特定整理策略的细节或者需要修改策略,只需查看 Collator 的子类即可。