如何对一个String数组中的数据进行由a~z或A~Z的排序?

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【xiaohuige】截止到2008-07-12 11:47:32的历史汇总数据(不包括此帖):
    发帖的总数量:4                        发帖的总分数:150                      每贴平均分数:37                       
    回帖的总数量:5                        得分贴总数量:1                        回帖的得分率:20%                      
    结贴的总数量:0                        结贴的总分数:0                        
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:4                        未结的总分数:150                      
    结贴的百分比:0.00  %               结分的百分比:0.00  %                  
    无满意结贴率:---------------------无满意结分率:---------------------
    如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html
      

  2.   

    论坛里有个收集java函数的帖子,你找一下,记得里面提到过
      

  3.   

    这是引用他人的代码,楼主看一下,/**
     * 对给定的字符数组进行字典排序
     * @param chs 目标字符数组
     * @param upperFisrt 大写字母是否在前
     * @return 排序后的字符数组
     */
    public static char[] sortChars(char[] chs, final boolean upperFisrt){
    Character[] srcArray = new Character[chs.length];
    char[] retArray = new char[chs.length];
    int index = 0; for(char ch: chs){
    srcArray[index++] = ch;
    } Arrays.sort(srcArray, new Comparator<Character>(){
    public int compare(Character c1, Character c2){
    char ch1 = Character.toUpperCase(c1);
    char ch2 = Character.toUpperCase(c2);
    if(ch1 == ch2){
    int tempRet = c1.charValue() - c2.charValue();
    return upperFisrt? tempRet: -tempRet;
    }
    else{
    return ch1 - ch2;
    }
    }
    });
    index = 0;
    for(char ch: srcArray){
    retArray[index++] = ch;
    }
    return retArray;
    }