public static void main(String[] args) {
String[] strs = {"张三","李四","王五"};
Comparator c = Collator.getInstance(Locale.CHINA);
Arrays.sort(strs,c);
int i = 0;
for(String str : strs) {
System.out.println((++i)+"、"+ str);
}
}
1、李四
2、王五
3、张三
对于某些生僻字,无法java无法做出正确的排序,因为java使用的是UNICODE编码,而中文UNICODE字符集是源于GB18030,GB18030又是GB2312发展起来,GB2312是一个包含7000多个字符的字符集,它是按拼音排序,并且是连续的,之后的GBK、GB18030都是在其基础上扩充出来的,所以要让它们完整排序也就难上加难
本文探讨了Java中处理中文排序的难点,解释了由于UNICODE编码的原因导致的排序问题,并提供了有效的解决方法。
1313

被折叠的 条评论
为什么被折叠?



