java 10. 参数返回值问题
形参和实参
形参可以理解为是方法执行时的临时变量空间 x
形参可以理解为是方法执行时的临时变量空间 a
方法调用时会将实参的内容传递给形参
如果内容是基本类型,传递的是值,形参改变,实参不变
如果内容是引用类型,传递的是引用,形参改变,实参跟着改变
方法中的参数传递及返回值内存原理(基础类型)
public class Test {
public void changeNum(int x){
System.out.println("方法执行开始:"+x);
x = 10;
System.out.println("方法执行最终:"+x);
}
public static void main(String[] args){ //main不属于Test类,它只属于JVM
Test t = new Test();
int a = 1;
t.changeNum(a);
System.out.println("方法执行完毕,main方法中a的值:"+a);
}
}
![](https://img-blog.csdnimg.cn/img_convert/a5f552b27ea67df589aa94bad419c3cf.png)
方法中的参数传递及返回值内存原理(引用类型)
public class Test {
public void changeArray(int[] x){
System.out.println("方法执行开始:"+x[0]);
x[0] = 10;
System.out.println("方法执行最终:"+x[0]);
}
public static void main(String[] args){ //main不属于Test类,它只属于JVM
Test t = new Test();
int[] a = new int[]{1,2,3};
t.changeArray(a);
System.out.println("方法执行完毕,main方法中a的值:"+a[0]); //10
}
}
![](https://img-blog.csdnimg.cn/img_convert/6e914ba59b3922eb19e68a07436d6d16.png)
两个数组的元素交换,两个方式
- 交换元素
- 交换地址
更多学习笔记移步
https://www.cnblogs.com/kknote