java引用参数的传值
时间: 2023-06-15 09:08:17 浏览: 156
在Java中,方法调用时,参数传递的方式分为值传递和引用传递两种方式。
值传递是指将一个变量的值复制一份给方法参数,方法内部对参数的修改不影响原变量的值。这种方式适用于基本数据类型。
引用传递是指将一个对象的引用传递给方法参数,方法内部对参数的修改会影响原对象的状态。这种方式适用于非基本数据类型,例如数组、类对象等。
举个例子:
```
public class Test {
public static void main(String[] args) {
int a = 10;
int b = 20;
swap(a, b);
System.out.println("a = " + a + ", b = " + b); // a = 10, b = 20
int[] arr = {1, 2, 3};
change(arr);
System.out.println(Arrays.toString(arr)); // [2, 4, 6]
}
public static void swap(int a, int b) {
int temp = a;
a = b;
b = temp;
}
public static void change(int[] arr) {
for (int i = 0; i < arr.length; i++) {
arr[i] *= 2;
}
}
}
```
在上面的例子中,swap方法采用值传递方式传递参数,所以方法内部对参数的修改不会影响原变量的值。而change方法采用引用传递方式传递参数,所以方法内部对参数的修改会影响原数组的状态。
阅读全文