返回问题

回帖的评论

fkg:

根据各位大佬的回复,对上述代码做了修正:

public static boolean compareArg(String a,String b){
    if(a.length()!=b.length()){
        return false;
    }
    a=a.toLowerCase();
    char[] as=a.toCharArray();
    Arrays.sort(as);
    b=b.toLowerCase();
    char[] bs=b.toCharArray();
    Arrays.sort(bs);
    for(int j=0;j<b.length();j++){
        if(as[j]!=bs[j]){
            return false;
        }
    }
    return true;
}

还是不如四楼老兄给出的方法简洁╭(╯^╰)╮,下面有另外一种思路:

public static boolean compareArg(String s, String t) {
    if(s.length()!=t.length()){
        return false;
    }
    s.toUpperCase();
    int bit[] = new int【26】;
    for(int i=0;i<s.length();i++){
        bit[s.charAt(i)-'a']++;
    }
    for(int i=0;i<s.length();i++){
        if(--bit[t.charAt(i)-'a']!=0)
            return false;
    }
    return true;
}
文明上网,理性发言
客户端 Android iPhone WP7