java 把一个字符串中所有出现的大写字母都替换成小写字母,同时把小写字母替换成大写字母.

2025-04-28 05:27:14
推荐回答(2个)
回答1:

package test;
public class Tese{

public static void main(String[]args){
String str = "abcdABCDqwQW";
String str1 = str.toLowerCase();
String str2 = str.toUpperCase();
String sum="";
for(int i=0;i if((str.substring(i, 1+i)).equals(str1.substring(i, 1+i))){
sum +=str2.substring(i, 1+i);
}else{
sum +=str1.substring(i, 1+i);
}

}

System.out.println(sum);
}
}

回答2:

这么麻烦?那就只用ascll码值来比较,将字符串每个英文字母转换成ASCLL码进行判断,
比如:
我们都知道【A】对应的ASCII是【65】,【a】对应的ASCII是【97】,没错,所有大小写字母的ASCII值相差是32,也就是你判断如果字符串的有B,因为B的ASCII码是66,所以将B的ASCLL加上32以后,就得到98、也就是小写字母【b】的ASCLL值,然后再把98转换回来就是b了。

听起来运算起来好像挺复杂的,但是不是,你把字符串循环操作时,转换、判断、转换替代就OK啦。怎样转成ASCII,自己去看看书吧,很简单的。

======================================================
补充一下,更加ASCII码表,字母A~Z的ASCII值范围是65~90,a~z是97~122,所以你完全可以根据一个字母的ASCII值来判断它是大写字母还是小写字母