中文排序要注意的问题
来源:互联网 发布:软件模块化设计 编辑:程序博客网 时间:2024/06/05 16:59
遇到了中文排序问题,比如想用拼音排序,
发现排序结果是:张三(Z)","李四(L)","王五(W),后来看了下《高质量java 151个建议》
一书,发现找到了答案,原来是每一个字符采用uft-8编码来比较,因为张排在李的前面,
所以就有这个答案了。因此建议使用的是compareto排序,如下:
但对于中文复杂的同音字情况,依然会偶然有问题,这个时候,就建议使用如ping4j等开源工具来进行转化排序了
- String[] strs = {"张三(Z)","李四(L)","王五(W)"};
- //排序,默认是升序
- Arrays.sort(strs);
String[] strs = {"张三(Z)","李四(L)","王五(W)"};//排序,默认是升序Arrays.sort(strs);
发现排序结果是:张三(Z)","李四(L)","王五(W),后来看了下《高质量java 151个建议》
一书,发现找到了答案,原来是每一个字符采用uft-8编码来比较,因为张排在李的前面,
所以就有这个答案了。因此建议使用的是compareto排序,如下:
- String[] strs = {"张三(Z)","李四(L)","王五(W)"};
- //定义一个中文排序器
- Comparator c = Collator.getInstance(Locale.CHINA);
- //升序排列
- Arrays.sort(strs,c);
String[] strs = {"张三(Z)","李四(L)","王五(W)"};//定义一个中文排序器Comparator c = Collator.getInstance(Locale.CHINA);//升序排列Arrays.sort(strs,c);
但对于中文复杂的同音字情况,依然会偶然有问题,这个时候,就建议使用如ping4j等开源工具来进行转化排序了
- 中文排序要注意的问题
- 中文排序要注意的问题
- 中文排序要注意的问题
- 发布中文Qt程序时要注意的问题
- web中过滤器的顺序要注意,中文乱码问题
- extjs分页和全局排序要注意的问题
- PAT乙级 1060. 爱丁顿数(25)--数学问题,sort()排序要注意的问题
- 使用Spring的javamail注意的中文问题
- 使用Spring的javamail注意的中文问题
- 使用Spring的javamail注意的中文问题
- 英文版SQL Server 2008使用时,字段中存在中文的要注意编码问题
- velocity使用中文要注意的地方
- velocity使用中文要注意的地方
- 中文数据库要注意的点
- daemon进程中文件读写注意的一些问题
- 解决中文编码问题的四个注意点
- c++ 中文件的输入输出 问题 必须注意
- mysql中文乱码问题,需要注意修改的几个地方
- RDMA 简介
- 彩色体绘制论文中 涉及的1D传输函数的参考论文
- android点击实现图片放大缩小
- 【2013.2.25】我命格无双,一统江山。——Command
- XSS之xssprotect
- 中文排序要注意的问题
- android 开发 新建工程
- 类的同时初始化
- LCM Challenge--codeForces 235A
- 快递100 java 示例API 返回结果乱码 之替代方案
- POJ3982《序列》方法:高精度
- RC加密解密算法C源代码
- android应用 小试牛刀 开发自己的应用程序就是这么简单
- 深入浅出Netty之二 server启动