public class MyString
implements Comparable<MyString>{
String
a;
public MyString(String a){
this.
a=a
;
}
public String
getMyString(){
return a;
}
@Override
public int compareTo(MyString o) {
int result=
0;
char[] aa=
a.toCharArray()
;
char[] oo=o.getMyString().toCharArray()
;
int num1=aa.
length;
int num2=oo.
length;
if(num1>num2){
num1=num2
;
result=
1;
}
for(
int i=
0;i<num1
;i++){
double my=(
double)aa[i]
;
double you=(
double)oo[i]
;
if(
'a'<=my&&
'z'>=my){
my=my-(
'a'-
'A')+
0.5;
}
if(
'a'<=you&&
'z'>=you){
you=you-(
'a'-
'A')+
0.5;
}
if(my>you){
return 1;
}
else if(my<you){
return -
1;
}
}
return result
;
}
public static void main(String[] args){
List<MyString> myStrings=
new ArrayList<>()
;
MyString s=
new MyString(
"Bc")
;
myStrings.add(s)
;
s=
new MyString(
"Ad")
;
myStrings.add(s)
;
s=
new MyString(
"aC")
;
myStrings.add(s)
;
s=
new MyString(
"Hello")
;
myStrings.add(s)
;
s=
new MyString(
"X man")
;
myStrings.add(s)
;
s=
new MyString(
"little")
;
myStrings.add(s)
;
s=
new MyString(
"During")
;
myStrings.add(s)
;
s=
new MyString(
"day")
;
myStrings.add(s)
;
Collections.
sort(myStrings)
;
for(MyString str:myStrings){
System.
out.print(str.getMyString()+
" ")
;
}
}
}
Ad aC Bc During day Hello little X man
Process finished with exit code 0