1.传参传基本类型
public static void fun(int x){
x=100;
System.out.println("x="+x);
}
public static void main(String[] args) {
int a=10;
fun(a);
System.out.println("a="+a);
}
传基本数据类型时,传过去的是数值,形参只是实参的一份临时拷贝。出了fun函数,函数汇报销毁,所以修改形参不会改变实参。
2.传参传引用类型
public static void test(int[]newarray){
newarray=new int[]{10,20,30};
}
public static void main(String[] args) {
int[]array={1,2,3};
test(array);
System.out.println(Arrays.toString(array));
}
传引用数据类型时,引用其空间中存储的是对象所在空间的地址,传引用的实质还是传值,只不过这个值是地址。所以通过传引用也无法改变实参的值。但是,可以通过下标来修改,如下。
public static void test(int[]newarray){
newarray=new int[]{10,20,30};
}
public static void test2(int[]newarray2){
newarray2[1]=99;
}
public static void main(String[] args) {
int[]array={1,2,3};
test(array);
test2(array);
System.out.println(Arrays.toString(array));
}