当前位置: 代码迷 >> J2SE >> 一个关于引用传递和值传递的有关问题
  详细解决方案

一个关于引用传递和值传递的有关问题

热度:149   发布时间:2016-04-23 19:48:48.0
一个关于引用传递和值传递的问题
package newbao;

public class Test100 {
String str=new String("good");
char[] ch={'a','b','c'};
public static void main(String[] args) {
Test100 t=new Test100();
t.change(t.str,t.ch);
System.out.print(t.str+" and ");
System.out.print(t.ch);
}
private void change(String str, char[] ch) {
str="test ok";
ch[0]='g';

}
}
结果:good and gbc
两个问题:1.change(String str,char[] ch)中的String是引用传递还是值传递呀,为什么?
                   2.为什么打印t.ch这个数组打印出的是字符,而不是地址?


------解决思路----------------------
String是对象,传递的是引用,但是它有值的特性。String是java的一个特殊的类,特殊的地方一是String类final的,也就是最终的;如果还不懂;按照meng_taiqian的试试,会很有趣..........
  相关解决方案