我正在尝试创建一个简短的程序,该程序会将所有大写字母转换为小写字母(从命令行输入)。
下面的代码可以编译,但是没有给我期望的结果。这是什么原因呢?
例如,java toLowerCase BANaNa->给出香蕉的输出
public class toLowerCase{
public static void main(String[] args){
toLowerCase(args[0]);
}
public static void toLowerCase(String a){
for (int i = 0; i< a.length(); i++){
char aChar = a.charAt(i);
if (65 <= aChar && aChar<=90){
aChar = (char)( (aChar + 32) );
}
System.out.print(a);
}
}
}
最佳答案
在我看来就像是作业,只是一个提示。您正在打印字符串a
,而您正在修改char
类型aChar
,它没有修改原始字符串a
。 (记住字符串是不可变的)。