字符/字符串数组如何比较大小?
1.char类型直接比较ASCII码
char c1 = 'a';
char c2 = 'b';
if(c1 < c2){
System.out.println("a<b");
}else if(c1 == c2){
System.out.println("a==b");
}else{
System.out.println("a>b");
}
2.String类型用String.compareTo比较ASCII码
String s1 = "a";
String s2 = "b";
int result = s1.compareTo(s2);//如果s1比s2的ASCII码小,result<0
if(result<0){
System.out.println("a<b");
}else if(result == 0){
System.out.println("a==b");
}else{
System.out.println("a>b");
}
3.char/String数组顺序排序
char[] chars= {'a','d','c','z','o'};
for (int i = 0; i < chars.length; ++i) {
for (int j = 0; j < chars.length - i - 1; ++j) {
if (chars[j] > chars[j + 1]) {
char temp = chars[j];
chars[j] = chars[j + 1];
chars[j + 1] = temp;
}
}
}
System.out.println(Arrays.toString(chars));
String[] strs = {"aaa","kkk","ccc","bbb"};
for (int i = 0; i < strs.length; ++i) {
for (int j = 0; j < strs.length - i - 1; ++j) {
if (strs[j].compareTo(strs[j + 1]) > 0) {
String temp = strs[j];
strs[j] = strs[j + 1];
strs[j + 1] = temp;
}
}
}
System.out.println(Arrays.toString(strs));