java实现中文汉字按首字母排序

要实现汉字按首字母排序,主要是设置语言环境,以下语句设置语言环境:java


这里用到了Collator类,此类实现了Comparator接口,用他的getInstance就能够用指定的语言环境来构造一个Collator对象:spa

而后用以下语句建立Comparator:code

Comparator<Object> com=Collator.getInstance(java.util.Locale.CHINA);

要注意的是Comparator里面的泛型类型必定要是Object类型,由于Collator类实现的Comparator接口里面传入的对象是Object


完整的实现代码以下:对象

import java.text.Collator;  
import java.util.*;  
import java.util.Comparator;  
public class cpm {  
    public static void main(String[] args) {  
        // TODO Auto-generated method stub  
        Comparator<Object> com=Collator.getInstance(java.util.Locale.CHINA);  
        String[] newArray={"中山","汕头","广州","安庆","阳江","南京","武汉","北京","安阳","北方"};  
        List<String> list = Arrays.asList(newArray);
        Collections.sort(list, com); 
        for(String i:list){  
            System.out.print(i+"  ");  
        }
    }  
}

输出结果是:

安庆  安阳  北方  北京  广州  南京  汕头  武汉  阳江  中山 

blog