更改方法中变量的值,Java
我有一个关于在Java中更改方法中变量值的问题。
这是我的代码:
public class Test {
public static void funk(int a, int[] b) {
b[0] = b[0] * 2;
a = b[0] + 5;
}
public static void main(String[] args) {
int bird = 10;
int[] tiger = {7};
Test.funk(bird, tiger);
}
}
执行方法后,bird 的值不会更改 - 它仍然与值一起,即使在方法中我们更改了值Test.funk(bird, tiger)
10
funk()
a = b[0] + 5;
另一方面,数组中元素的值会发生变化,因为我们有语句b[0] = b[0] * 2;
我不明白为什么一件事改变了,而另一件事没有?有人可以为我解释一下吗?