java在引用数据类型和引用数据类型值传递的规律是:
基本数据类型不改变原值,引用数据类型改变原值.具体是:
在main方法中我们声明
int a = 10; int b = 20;
我们将a和b作为实际参数传入方法
public static void swap(int a, int b) {//a b 互换
a = a ^ b;
b = a ^ b;
a = a ^ b;
}
但是调用方法后main方法的a b 值不变,还是 a = 10, b = 20;
但是我们如果用引用数据类型变量作为实际参数传进去一个方法里,在方法里修改了变量,原值是会改变的;
请问代码的原理是什么? |
|