黑马程序员技术交流社区
标题:
帮忙看看着段代码问题出在哪儿?
[打印本页]
作者:
jacobsnow
时间:
2016-4-26 21:47
标题:
帮忙看看着段代码问题出在哪儿?
帮忙看看着段代码问题出在哪儿?
[size=4]package com.heima.test;
public class Dome4_change {
/**
需求:把一个字符串的首字母转成大写,其余为小写。(只考虑英文大小写字母字符)
//char charAt(int index):获取指定索引位置的字符
*/
public static void main(String[] args) {
String x = "wangnima";
for (int i = 0; i < x.length(); i++) {
if (i==0) {
char y[] ={x.charAt(i)};
String z = y.toString();
System.out.print( z.toUpperCase());
}else{
System.out.print(x.charAt(i));
}
}
}
}[/size]
复制代码
为什么编译运行后是
[C@1AC4F3Eangnima
不是我想要的首字母大写?????
作者:
zh2016
时间:
2016-4-26 22:19
代码思路严重不对啊!string里面不是有个up****,slow****,两个方法吗,专门变大小写的!
作者:
Wanibal
时间:
2016-4-26 22:54
好人一生平安
作者:
Wanibal
时间:
2016-4-26 23:28
所有的数组或复杂对象 如果没有改写toString方法 那它的toString方法返回的都是它的类型和在内存中的地址。所以第15行应该改成String p=new String(y); ,然后System.out.print(p.toUpperCase()),就可以了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2