java参数引用是传值还是传引用
java方法对参数的引用是传值还是传引用?这个讨论网上有不同的意见和看法
这里我就不多说了。
我主要说下我遇到的:
对于基本类型,如int,float,char....,是将原来的copy一份,在方法对其的更改,不会影响到原来的值。
?
对于Object类型,如果在方法里没有对参数new下的话,(算是传引用)就是在方法对其的更改,会影响到原来的值。
如果有对参数new下,然后对参数进行操作,对其的更改,不会影响到原来的值。
?
例如
?
void test(Object o){
?? o = new Object();
??? .....
?? //对o进行其它操作,不会影响到调用该方法的原来值。
? //如果没有 o = new Object();对o进行其它操作,会影响到调用该方法的原来值。
}
?