注意!!!不是所有方法都用传参,接下来只讨论需要传参的方法
形参VS实参
-
形参(formal parameter):在定义方法时方法名后面括号中声明的变量称为形式参数(简称形参)即形参出现在方法定义时。
-
实参(actual parameter):调用方法时方法名后面括号中的使用的值/变量/表达式称为实际参数(简称实参)即实参出现在方法调用时。
-
实参的作用就是给形参赋值。调用时,实参的个数、类型、顺序顺序要与形参列表一一对应。如果方法没有形参,就不需要也不能传实参。
public class Test1 {
public static void main(String[] args) {
int i =1;
int j =2;
add(i,j);
}
static int add(int a,int b){
return a+b;
}
}
此例子中i,j是实参
a,b是形参
基本数据类型 vs 引用数据类型
-
方法的形参是基本数据类型时,形参值的改变不会影响实参;
-
方法的形参是引用数据类型时,形参地址值的改变不会影响实参,但是形参地址值里面的数据的改变会影响实参,例如,修改数组元素的值,或修改对象的属性值。
-
注意:String、Integer等特殊类型容易错
-
形参是基本数据类型时,形参的改变不会影响实参
形参是引用数据类型时,比如数组,形参传递的是数组所在地址,方法内对该地址的数组进行更改实参也会相应改变
局部变量没有默认值,没有赋值会报错
int a;
void qwe(a){
}
会报错