public class F {
int test(int e) {
System.out.println("ok");
return e;
}
public static void main(String[] args) {
int y = 8;
F f = new F();
int i = f.test(y++);
System.out.println(i);
}
}
このプログラムの出力は8
、私が期待するものです。
public class Sa {
public static void main(String[] args) {
int i = 8;
i++;
System.out.println(i);
}
}
このプログラムの出力は です9
。これは驚くべきことです。なぜ、両方のプログラムで同じ値と同じインクリメント演算子を使用して異なる値を取得しているのでしょうか?