public class Test1 {
public static void main(String[] args) {
String s1 = "123";
String s2 = "456";
show(s1, s2);
System.out.println(s1 + "---" + s2);
}
private static void show(String s1, String s2) {
s1 = s2 + s1 + "a";
s2 = "b" + s1;
}
}
lipeng518 发表于 2016-9-22 22:14
虽然是引用数据类型,但是他是放在常量池的/好像传递参数不会改变实参的数值.不知道你听不听的懂 ...
醉醒 发表于 2016-9-22 22:16
main方法进栈,s1指向常量池 "123",s2 指向 "456",然后show进栈,show方法的s1指向常量池中的s2 + s1 + "a",s ...
18001105207 发表于 2016-9-22 22:53
main方法里的s1.s2和show方法里的s1.s2没关系。show(s1,s2)只是将值传了出去,不会改变其值 ...
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |