当前位置:首页 > 行业动态 > 正文

java怎么进行值传递和数组传递

Java中,基本数据类型是按值传递,对象和数组是按引用传递。对于基本数据类型,传递的是变量的值;对于对象和数组,传递的是对象的引用或数组的地址。

在Java中,方法的参数传递方式有两种:值传递和引用传递,对于基本数据类型(如int、float、double等),采用的是值传递;而对于对象类型(如数组、类对象等),采用的是引用传递。

java怎么进行值传递和数组传递  第1张

1、值传递:当传递基本数据类型时,实际上是将变量的值复制一份传递给方法,这样在方法内部对参数进行修改,不会影响到原始变量的值。

示例代码:

public class ValuePassing {
    public static void main(String[] args) {
        int num = 10;
        System.out.println("Before method call, num = " + num);
        changeValue(num);
        System.out.println("After method call, num = " + num);
    }
    public static void changeValue(int value) {
        value = 20;
    }
}

输出结果:

Before method call, num = 10
After method call, num = 10

2、引用传递:当传递对象类型时,实际上是将对象的引用(内存地址)传递给方法,这样在方法内部对参数进行修改,会影响到原始对象。

示例代码:

public class ArrayPassing {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3};
        System.out.println("Before method call, arr[0] = " + arr[0]);
        changeArray(arr);
        System.out.println("After method call, arr[0] = " + arr[0]);
    }
    public static void changeArray(int[] array) {
        array[0] = 10;
    }
}

输出结果:

Before method call, arr[0] = 1
After method call, arr[0] = 10

对于基本数据类型,Java采用值传递;对于对象类型(包括数组),Java采用引用传递。

0