Character大小写转化问题!

heiio_world 2015-08-18 02:41:04
import java.util.Scanner;

public class Test4 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
String line = sc.nextLine();
char[] cs = line.toCharArray();
for (int i = 0; i < cs.length; i++) {
if (Character.isLowerCase(cs[i])) {
Character.toUpperCase(cs[i]);
} else {
Character.toLowerCase(cs[i]);
}
System.out.print(cs[i]);
}
}
}
输入:AAAAbbbb
输出:aaaaBBBB
上面的Character.toUpperCase(cs[i]);和Character.toLowerCase(cs[i]);为甚么不起作用?求解!
...全文
119 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
heiio_world 2015-08-18
  • 打赏
  • 举报
回复
引用 3 楼 gukuitian 的回复:
真能闹,写个输出,竟然不是你程序的执行结果

			if (Character.isLowerCase(cs[i])) {
				cs[i]=Character.toUpperCase(cs[i]);
			}
			else {
				cs[i]=Character.toLowerCase(cs[i]);
			}
谢谢! 谢谢各位!
JPF1024 2015-08-18
  • 打赏
  • 举报
回复
你要把修改后的值接收回来才可以,这个跟方法传值和传引用的问题有相似之处。
鱼小怪 2015-08-18
  • 打赏
  • 举报
回复
大小写已经转换了,但是没有给数组重新赋值,所以输出的还是原来的结果,改成cs[i]=Character.toUpperCase(cs[i]);就行了
gukuitian 2015-08-18
  • 打赏
  • 举报
回复
真能闹,写个输出,竟然不是你程序的执行结果

			if (Character.isLowerCase(cs[i])) {
				cs[i]=Character.toUpperCase(cs[i]);
			}
			else {
				cs[i]=Character.toLowerCase(cs[i]);
			}
heiio_world 2015-08-18
  • 打赏
  • 举报
回复
引用 1 楼 gukuitian 的回复:
没看出问题啊 你的代码不就是大写转小写,小写的转成大写的么
你拿去运行下就知道了。
gukuitian 2015-08-18
  • 打赏
  • 举报
回复
没看出问题啊 你的代码不就是大写转小写,小写的转成大写的么

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧