1、基本数据类型,传递是值(值拷贝),形参的任何改变不影响实参
基本数据类型:数值型(整数、浮点数)、字符型、 布尔型
public class MethodParameter01{
public static void main(String[] args){
int a = 10;
int b = 20;
AA obj = new AA();
obj.swap(a,b);
System.out.println("main()方法中 a=" + a + "\tb = " + b);
}
}
class AA{
public void swap(int a, int b){
System.out.println("a和b交换前的值为 a = " + a + "\tb = " + b);
int temp = a;
a = b;
b = temp;
System.out.println("a和b交换后的值为 a = " + a + "\tb = " + b);
}
}
2、引用类型传递,传递的是地址的值,可以通过形参影响实参
引用数据类型:类、接口、数组
public class MethodParameter02{
public static void main(String[] args){
B b = new B();
int[] arr = {1,2,3};
b.test100(arr);
System.out.println("main的 arr数组");
for(int i = 0; i < arr.length; i++){
System.out.print(arr[i] + "\t");
}
System.out.println("");
}
}
class B{
public void test100(int[] arr){
arr[0] = 200;
System.out.println("test100的 arr数组");
for(int i = 0; i < arr.length; i++){
System.out.print(arr[i] + "\t");
}
System.out.println("");
}
}