public class Pass{
static int j=20;
public static void main(String argv[]){
int i=10;
Pass p = new Pass();
p.amethod(i);
System.out.println(i);
System.out.println(j);
}
public void amethod(int x){
x=x*2;
j=j*2;
}
}
为什么结果是10和40呢?
i的值没有改变,但是j的值*2了?
amethod这个方法中没有对i进行操作,只是把i的值传给了形参x 所以 i不变,但是j是一个类变量,在amthod这个方法中做了✘2操作 所以j变两倍了