美文网首页
59.Java推荐使用Collator类进行中文排序

59.Java推荐使用Collator类进行中文排序

作者: ggr | 来源:发表于2018-03-11 10:54 被阅读0次

关于java中的涉及到的一些中文排序的问题一直都是一个很头疼的问题,因为java采用UNICODE编码,而中文的UNICODE编码来源于GB18030,GB18030有时从GB2312发展上来的,gb2312包含了7000多个字符的字符集,按照拼音排序,之后的GBK,GB18030都是慢慢扩充的,所以要上他们完整排序难度很大。一般情况下我们使用的是Collator进行处理中文排序,Collator类的使用如下:

public class Client {

    public static void main(String[] args) throws Exception {

        String[] words = {"阿婷(A)","胖子(P)","猪大侠(Z)"};

        //定义一个中文排序器
        Comparator c = Collator.getInstance(Locale.CHINA);

        Arrays.sort(words,c);

        for(int i=0;i<words.length;i++){
            System.out.println("i"+i+"-->"+words[i]);
        }
    }


当然如果你非要追求极致的话,可以使用一些开源的项目比如pinyin4j把汉字转换为拼音再自定义排序。如果排序不是一个关键算法,还是使用Collator类即可。

相关文章

  • 59.Java推荐使用Collator类进行中文排序

    关于java中的涉及到的一些中文排序的问题一直都是一个很头疼的问题,因为java采用UNICODE编码,而中文的U...

  • 数字、字母,汉语拼音进行排序

    一:数字、字母,汉语拼音进行排序 关键点:利用Collator 类执行区分语言环境的 String 比较。使用此类...

  • 汉字字母数字排序

    汉字字母数字排序 Collator Collator 用来简化我们处理各种语言之间的差别性。Collator 主要...

  • 工具类

    说明:Java开发中常用工具类 一.排序 1.1 汉字排序 说明1:jdk自带的Collator包含的汉字太少了,...

  • Java中文按照拼音排序(含中文)

    添加maven,中文转拼音 工具jar 中文转拼音 排序封装类 使用

  • 如何对各种Map进行排序

    在通常的排序场景中,我们都是使用List或者是Set来承载各个元素,然后使用Collections工具类来进行排序...

  • 贴吧ABC

    类的定义和使用 列表对类的某个属性进行排序 字典是否存在这个键值

  • 选择排序

    引言 文章会使用一个基类,如果需要使用,请点击基类)进行获取; 介绍 选择排序相对于上一次写的冒泡排序而言,效率相...

  • 仿通讯录右边的字母搜索

    1、添加依赖 把中文转成拼音才能按首字母进行排序 2、三个工具类 PinYinUtils SystemUtil T...

  • 对象数组如何排序-Comparable接口详解

    1 普通数组使用Arrays.sort方法排序 在Arrays工具类中,sort函数可以对普通数组进行排序,如以下...

网友评论

      本文标题:59.Java推荐使用Collator类进行中文排序

      本文链接:https://www.haomeiwen.com/subject/zxpvfftx.html