Java语言的参数传递分为两种:
1、按值传递(by value)
适用范围:8种基本数据类型、 String对象
特点:在内存中复制一份数据,把复制后的数据传递到方法内部
作用:在方法内部改变参数的值,外部数据不会跟着发生改变
2、按址传递(by address)
适用范围:数组、除String以外的其他所有类型的对象
特点:将对象的地址传递到方法内部
作用:在方法内部修改对象的内容,外部数据也会跟着发生改变
(ps:例如int是按值传递的,而Integer是按址传递的;double是按值传递的,而Double是按址传递的)
可以通过参考传值,如下:
public class Test{
public void function(int a){}
public static void main(String []args){
Test test=new Test();
int a=1;
test. function(a);
}
}