欢迎访问宙启技术站
智能推送

一步步学习Java函数的参数传递方法

发布时间:2023-06-10 20:56:44

Java函数参数传递是指在调用函数时将数据传递给函数。Java函数的参数传递方法有两种:值传递和引用传递。值传递是指将数据的值传递给函数;引用传递是指将数据的地址传递给函数。本文将一步步学习Java函数的参数传递方法。

一、值传递

在Java中,函数参数默认是值传递。值传递指的是将实参的值传递给形参,形参和实参是两个不同的变量,它们之间没有任何关系。在函数内部修改形参的值不会影响实参的值。

举个例子:

public class ValuePassing {
    public static void main(String[] args) {
        int a = 10;
        changeValue(a);
        System.out.println("a: " + a);
    }

    public static void changeValue(int b) {
        b = 20;
    }
}

输出结果为:

a: 10

在上面的例子中,变量a的值为10,将其作为实参传递给changeValue函数中的形参b。在函数内将b的值修改为20,但是这个修改并没有影响到变量a的值。

二、引用传递

引用传递是指将实参的地址传递给形参,形参和实参指向同一个内存地址。在函数内部修改形参的值会影响实参的值。

举个例子:

public class ReferencePassing {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3};
        changeValue(arr);
        System.out.println("arr[0]: " + arr[0]);
    }

    public static void changeValue(int[] a) {
        a[0] = 10;
    }
}

输出结果为:

arr[0]: 10

在上面的例子中,变量arr指向一个数组对象,将其作为实参传递给changeValue函数中的形参a。在函数内修改a指向数组中的第一个元素,也就是arr[0]的值为10。由于aarr指向的是同一个数组对象,所以实参的值也被修改了。

三、总结

Java函数参数传递方法有两种:值传递和引用传递。值传递将实参的值传递给形参,形参和实参是两个不同的变量,它们之间没有任何关系。引用传递是将实参的地址传递给形参,形参和实参指向同一个内存地址。在函数内部修改形参的值会影响实参的值。