如果形式参数是基本类型,形式参数的改变,不影响实际参数
如果形式参数是引用类型,形式参数的改变,直接影响实际参数
举例说明:
package com.edu_homewok;
public class ArgsDemo {
public static void main(String[] args){
int a = 10;
int b = 20;
System.out.println("a:"+a+",b:"+b); //10,20
change(a,b);
System.out.println("a:"+a+",b:"+b); //10,20
int[] arr = {1,2,3,4,5};
change(arr);
System.out.println(arr[1]); //4
}
public static void change(int a,int b) {
System.out.println("a:"+a+",b:"+b); //10,20
a = b;
b = a + b;
System.out.println("a:"+a+",b:"+b);//20,40
}
public static void change(int[] arr) {
for(int x=0; x<arr.length; x++) {
//如果数组的元素值是偶数,就变为以前的2倍。
if(arr[x]%2==0) {
arr[x]*=2;
}
}
}
}
答案为:
a:10,b:20
a:10,b:20
a:20,b:40
a:10,b:20
4
内存图解: