Java的File类和IO流其实真的不难
362
2022-07-23
今天刚学的java 字符串大小写的转化 写的不详细或错误请指出啊谢谢!!!
第一步首先要写输入对象的定义,用到Scanner来接收输入的字符串
Scanner sc = new Scanner(System.in);
第二步定义一个字符串类型的str来接收这个字符串
String str = sc.next();
第三步要把接收的这段字符串放入char类型的数组中
char[] arrays = str.toCharArray();
做第四步前要需要写两个方法
1.小写转化大写的方法
public static char toUpperCase(char c1){
int a = (int) c1;//将接收到的小写字符c1转换成int类型的数据给a
int b =a-32; //a-32得出小写对应大写的ascll数值
char bb = (char)b;//最后将b转换成char类型字符给bb
return bb; //返回bb;就是返回大写的字符
}
2.大写转化小写的方法
public static char toLowerCase(char c1){
int a = (int) c1;//将接收到的小写字符c1转换成int类型的数据给a
int b =a+32; //a+32得出大写写对应小写的ascll数值
char bb = (char)b;//最后将b转换成char类型字符给bb
return bb; //返回bb;就是返回字母小写的字符
}
写完toUpperCase, toLowerCase方法之后就是要将字符数组中的字符转换成对应的大小写字母,代码如下:
for(int i = 0;i char c1=arrays[i]; //依次显示输入字符串变数组之后的每一个字符 if(c1>=97 && c1<=122){ //如果输入是小写 ,则调用toUpperCase方法 char c2 = toUpperCase(c1); System.out.print(c2); } else if(c1>=65 && c1<=90){ char c2 = toLowerCase(c1);//如果输入是大写 ,则调用toLowerCase方法 System.out.print(c2); }else{ System.out.print(" "); /*考虑到有字符中包含数字或其他特殊字符的情况, 让不是字母的字符以空格代替*/ } 当看到 这些比较符后面的数字不懂什么意思,别急,我这里http://有张图参考 通过上表可以看到 小写字母中a-z的ascll范围97-122; 大写的字母A-Z的ascll范围65-90; 这样就可以解释第四步中的if语句里的比较符数值指的就是a-z的范围和大写A-Zd的范围 总结
char c1=arrays[i]; //依次显示输入字符串变数组之后的每一个字符
if(c1>=97 && c1<=122){ //如果输入是小写 ,则调用toUpperCase方法
char c2 = toUpperCase(c1);
System.out.print(c2);
}
else if(c1>=65 && c1<=90){
char c2 = toLowerCase(c1);//如果输入是大写 ,则调用toLowerCase方法
System.out.print(c2);
}else{
System.out.print(" "); /*考虑到有字符中包含数字或其他特殊字符的情况,
让不是字母的字符以空格代替*/
}
当看到
这些比较符后面的数字不懂什么意思,别急,我这里http://有张图参考
通过上表可以看到
小写字母中a-z的ascll范围97-122;
大写的字母A-Z的ascll范围65-90;
这样就可以解释第四步中的if语句里的比较符数值指的就是a-z的范围和大写A-Zd的范围
总结
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~