package xxx.java;
public class ValueTransferTest {
public static void main(String[] args) {
String s1 = "hello";
ValueTransferTest test = new ValueTransferTest();
test.change(s1);
System.out.println(s1);//输出的不是"hi~~",而是"hello"
}
public void change(String s){
s = "hi~~";
}
}
这个代码输出的不是"hi~~"。这里不能死记值传递机制:
如果参数是基本数据类型,此时实参赋给形参的是实参真实存储的数据值。
如果参数是引用数据类型,此时实参赋给形参的是实参存储数据的地址值
s1输出的是hello