2 q10640844 q10640844 于 2013.08.06 18:30 提问

面试中碰到的java基础题

今天面试碰到这么一个问题,想了半天,不知如何回答
P1=V1;
P2=V2;
method(P1,P2){
P1=V3;
P2=V4;
}
结果是P1=V1;P2=V4;问P1P2是什么类型的时候才会出现这种情况

3个回答

xuchi7
xuchi7   2013.08.06 23:18
已采纳

在传递的时候,如果传递的是原生数据类型,则值不会改变
public class Test {

public static void main(String[] args) {
    int a = 1;
    int b = 2;
    swap(a,b);
    System.out.println("a=="+a+"\t"+"b=="+b);

}
public static void swap(int c,int d){
    c = 3;
    d = 4;

}

}
不信你可以自己运行下看看

baimy1985
baimy1985   2013.08.06 19:35

猜测题目应该是想考察传值和传引用的区别,基本类型还是引用类型这么理解应该可以

cainiaoyihaoa
cainiaoyihaoa   2013.08.06 23:51

顶,楼上: P1 是非 指针类型时(数组,对象),P2 是 指针类型时

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!