//大小写一起排序A,a,B,b,……不能用现有的类 bymysele 通过测试
//a=97,z=122,A=65,Z=90
public class SortString{
public static void main(String args[]){
String[] array = {"ab","az","cc","bc","af","ACV"};
//Arrays.sort(array);不能实现大小写混排
//冒泡排序
for(int i=0; i<array.length; i++){
for(int j=0; j<array.length-i-1; j++){
if(cmpString(array[j],array[j+1])==1){
String temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
}
}
//打印结果
for(int i=0; i<array.length; i++){
System.out.println(array[i]);
}
}
public static int cmpString(String s1, String s2){
char s1_char[] = s1.toCharArray();
char s2_char[] = s2.toCharArray();
int length = s1_char.length <s2_char.length ? s1_char.length : s2_char.length ;
for(int i=0; i<length; i++){
if(cmpChar(s1_char[i],s2_char[i])==1){
return 1;
}
if(cmpChar(s1_char[i],s2_char[i])==-1){
return -1;
}
}
return 0;
}
public static int cmpChar(char c1, char c2){
if(c1>='a'&&c1<='z'){
c1=(char)(c1-32);
}
if(c2>='a'&&c2<='z'){
c2=(char)(c2-32);
}
if(c1>c2){
return 1;
}else if(c1==c2){
return 0;
}else{
return -1;
}
}
}