首页 > 试题广场 >

下面程序运行之后,变量x的值是(  &n

[不定项选择题]
下面程序运行之后,变量x的值是(     )。
......
//swap方法的声明
public static void swap(int a,int b){
int t=a;
a=b;
b=t;}
//main方法
public static void main(String args[]){
int x=2;
int y=3;
swap(x,y);}
  • 2
  • 3
  • 4
  • 6

巨坑~

  • main方法的x,y和swap方法的a,b是不同的变量,它们有自己的内存空间,方法调用,只是把x,y的内存的值复制给swap方法的a,b,所以改变swap方法的a,b只是改变swap方法的a,b的内存的信息,并不影响x,y的内存;
  • 如果运用引用传递swap(&x,&y);,传递的是x的地址的话,那就可以进行两数的交换了!!!
发表于 2020-03-17 01:11:39 回复(2)
因为java采取的是值传递的传值方式,对于基本数据类型来说传递的是该变量的一个复制,对于引用类型来说传递的是该值的一个引用,如果实在数组中交换两个位置的值得话,那么就会改变该数组。
发表于 2020-10-05 20:56:58 回复(0)

加&

发表于 2019-09-10 15:08:39 回复(0)