我在理解非常基本的Java代碼時遇到了一些麻煩,我無法弄清楚在編譯x = 2時如何。因爲通過我的邏輯應該4.代碼本身:在Java中返回值
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;
}
}
它打印出:
FOO的x,y:3 3
棒X,Y:3 9
FOO的x,y:4 4
主X,Y:2 4
當您發佈您打印的日誌時,它可以幫助其他人。 – WarrenFaith
我建議你逐步調試器中的代碼。這樣你就可以看到每行代碼的功能。 –