问题描述
- 面试中碰到的java基础题
-
今天面试碰到这么一个问题,想了半天,不知如何回答
P1=V1;
P2=V2;
method(P1,P2){
P1=V3;
P2=V4;
}
结果是P1=V1;P2=V4;问P1P2是什么类型的时候才会出现这种情况
解决方案
在传递的时候,如果传递的是原生数据类型,则值不会改变
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;
}
}
不信你可以自己运行下看看
解决方案二:
猜测题目应该是想考察传值和传引用的区别,基本类型还是引用类型这么理解应该可以
解决方案三:
顶,楼上: P1 是非 指针类型时(数组,对象),P2 是 指针类型时
时间: 2024-10-03 23:48:56