我在理解非常基本的 Java 代码时遇到了一些麻烦,我不知道最终如何编译 x=2。因为通过我的逻辑它应该是4。代码本身:
public class eksami_harjutused {
public static int x=2;
public static int y=2;
public static void main(String[] args) {
foo(bar(foo(x)));
System.out.println("main x,y: "+x+" "+y);
}
public static int foo(int x) {
x++;
y++;
System.out.println("foo x,y: "+x+" "+y);
return x;
}
public static int bar(int x) {
int z=0, y=10, u=0;
--y;
for(y=1; y<(x*x); y++) {
for(z=1; z<x; z++) {
u++;
}
}
System.out.println("bar x,y: "+x+" "+y);
return z;
}
}
它打印出来:
富 x,y: 3 3
条 x,y:3 9
富 x,y: 4 4
主要 x,y: 2 4