方法不能改变基本数据类型的的值

在调用方法时,若要使方法改变实参的值,可以(B)

A)用基本数据类型作为参数

B)用对象最为参数

C)A和B都对

D)A和B都不对

分析:

public static void main(String[] args) {
int i = 1;
changeObj(i);
System.out.println(i);

Map<String, String> map = new HashMap<>();
map.put("a", "1");
changeObj2(map);
System.out.println(map.get("a"));
}
private static void changeObj2(Map<String,String> map){
map.put("a","2");
}
private static void changeObj(int i){
i = 0;
}

运行结果:

1

2

changeObj(i)中,只是新建了一个i=0的局部变量。int x=3;i=5;这个过程并不是改变了i的值,只是新建了一个变量名称为i,值为0的变量。

猜你喜欢

转载自www.cnblogs.com/sunny-8/p/9959575.html