初学者求大神解答JAVA问题

java中字符串数组排序 Arrays.sort() 是按西安大写后小写拍的 但是我想讲笑a排在B之前
有什么方法能实现
最好不是新建一个方法

4个回答

 /* package whatever; // don't place package name! */

import java.util.*;
import java.lang.*;
import java.io.*;

class C implements Comparator
{
    public int compare(Object arg0, Object arg1)
    {
        String s1 = arg0.toString().toLowerCase();
        String s2 = arg1.toString().toLowerCase();
        return s1.compareTo(s2);
    }
}

class Ideone
{
    public static void main (String[] args) throws java.lang.Exception
    {
        String[] a = new String[] { "a", "b", "c", "A", "B", "C" };  
        Arrays.sort(a, new C());  
        for (int i = 0; i < a.length; i++)  
            System.out.println(a[i]);  
    }
}

你太天真了,写代码不就是为了按照自己的想法实现吗?还不新写一个方法。。。。。。。。
ASCLL码:
A~Z:65-90, a~z:97-122
char型在运算中取的是ASCLL码中的值,自己写判断排序。
学代码不要养成伸手党,要多动手,自己实现。

你是想忽略大小写按字母顺序吗?如果是的话就可以调用字符串的to Upper或者都转成小写统一就可以了。

结果
a
A
b
B
c
C

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐