(Java语言) 函数参数使用int[][]类型,为什么改变形参的值,实参也会改变?
代码如下:实参定义:int[][]a=newint[9][9];//全部9x9=81个数我全部初始化为1,这里我就不写了函数定义:publicvoidCreate(int...
代码如下:
实参定义:
int[][] a = new int[9][9]; //全部9x9=81个数我全部初始化为1,这里我就不写了
函数定义:
public void Create(int[][] inputMatrix){
int[][] tmpMatrix = inputMatrix;
tmpMatrix[8][8] = 99;
}
当我调用Create(a);的时候
a[8][8]也改变成了99,这是为什么?有什么办法可以实现只改变形参的值而不改变实参的值么?? 展开
实参定义:
int[][] a = new int[9][9]; //全部9x9=81个数我全部初始化为1,这里我就不写了
函数定义:
public void Create(int[][] inputMatrix){
int[][] tmpMatrix = inputMatrix;
tmpMatrix[8][8] = 99;
}
当我调用Create(a);的时候
a[8][8]也改变成了99,这是为什么?有什么办法可以实现只改变形参的值而不改变实参的值么?? 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询