public class swap {
public static void Swap(int a,int b) {
int tmp=a;
a=b;
b=tmp;
System.out.println("Swap方法里,a的值是 "+a+"; b的值是"+b);
}
public static void main(String[] args) {
int a=6,b=9;
Swap(a,b);
System.out.println("交换结束后,变量a的值是 "+a+"; b的值是"+b);
public static void Swap(int a,int b) {
int tmp=a;
a=b;
b=tmp;
System.out.println("Swap方法里,a的值是 "+a+"; b的值是"+b);
}
public static void main(String[] args) {
int a=6,b=9;
Swap(a,b);
System.out.println("交换结束后,变量a的值是 "+a+"; b的值是"+b);
}
}
运行结果为:
Swap方法里,a的值是 9; b的值是6
交换结束后,变量a的值是 6; b的值是9
main方法里的变量a和b并不是swap()方法里的a和b。 Swap方法的a 和 b只是main 方法a b的复制品
值传递,在程序运行main中的swap()方法时,main()函数只把,a b值的副本传入Swap函数,并没有改变main中的a 和 b
程序只改变Swap方法里的a和b并没有改变main中的a和b