日期:2014-05-20  浏览次数:20624 次

关于String类型转化为char[]类型数组的地址问题
String s1="";
String s2="";

char[] ch=s1.tocharArray();
System.out.println(ch);
System.out.println(ch+"");//按说输出的地址是一样的,但只有第二输说出地址,第一行什么都不输出
//求解答
------解决方案--------------------
print
public void print(char[] s)打印字符数组。
按照平台的默认字符编码将字符转换为字节,并完全以 write(int) 方法的方式写入这些字节。

第一个 打印应该打印的是ch数组里面的字符串,本身s1就是空的,所以println(ch) 为空了。
第二个 让char数组和String 相加,会在内存中开辟空间,存放新的String 结果值,所以打印出来的就是内存地址值了。