急!!!有一个关于数组传参的程序,请帮助分析结果。。。谢谢!
程序如下:
class ArrayArgument{
public static void main(String args[]){
int x[]={11,12,13,14,15};
display(x);
change(x);
display(x);
}
public static void change(int x[]){
int y[]={21,22,23,24,25};
x=y;
}
public static void display(int x[]){
for(int i=0;i<x.length;i++)
System.out.print(x[i]);
System.out.println("");
}
}
运行结果: 11,12,13,14,15
11,12,13,14,15
为什么没有改变数组x的值呢?
如果程序做些变动:将
x=y; 改成for(int i=0;i<x.length;i++)
x[i]=y[i]
则运行结果变为: 11,12,13,14,15
21,22,23,24,25