使用Collections.sort()方法对于中文字符进行排序,并不是按照中文拼音的顺序,原因是Collator类执行的是区分语言环境的String比较。

可调用Collator的静态方法getInstance()来获取所需语言环境的Collator对象。详细信息可查询API。

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

核心代码为

1 class xxCompare implements Comparator
2     {
3         public int compare(Object one,Object two)
4         {
5             TestClass s1=(TestClass) one;
6             TestClass s2=(TestClass) two;
7             return Collator.getInstance(Locale.CHINA).compare(s1.getName(),s2.getName());
8         }
9     }

此时Collections.sort(xx)方法应为Collections.sort(xx,new xxCompare()); 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄