package com.java.demo;
//基本数据类型,传递的是值,形参的任何改变不影响实参;
public class MethodParam01 {
public static void main(String[] args){
int a=5;
int b=6;
AAAA AA1=new AAAA();
AA1.swap(a,b);//实参
System.out.println("mian方法中a="+a+"\tb="+b);
}
}
class AAAA{
public void swap(int a,int b){//形参
System.out.println("交换前a="+a+"\tb="+b);
int tmp=a;
a=b;
b=tmp;
System.out.println("交换后a="+a+"\tb="+b);
}
}
基本数据类型,传递的是值,形参的任何改变不影响实参;
package com.java.demo;
public class MethodParameter02 {
public static void main(String[] args){
BB b=new BB();
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 BB{
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();
}
}
- 引用数据类型的传参机制
B类中编写一个方法test100,可以接受一个数组,在方法中修改数组,看看原来的数组是 否变化
B类中编写一个方法test200,可以接受一个Person(age,sal)对象,在方法中修改该对象属 性,看看原来的对象是否变化
- 引用类型传递的是地址(传递也是值,但是值也是地址)可以通过形参影响实参