使用变量调用函数会更改变量本身或仅更改其副本吗?

时间:2017-12-25 00:09:28

标签: java arrays

再次成为特朗普!

以下是代码:

public static void main(String[] ar){
    int[] a={1,2,3};
    int x=3;
    foo1(a);
    foo2(x);
    System.out.println(a[0]);
    System.out.println(x);
}
public static void foo1(int[] a){
    a[0]=55;
}
public static void foo2(int x){
    x=77;
}

输出:

55
3

特朗普的问题:当我致电foo2函数时,它不会更改x变量,更改仍然在函数范围内。但是当我打电话给foo1时,它会更改数组,我是对的吗?

0 个答案:

没有答案