小编use*_*149的帖子

与增量运算符混淆

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);
    }
}
Run Code Online (Sandbox Code Playgroud)

这个程序的输出8是我所期望的.

public class Sa {
    public static void main(String[] args) {
        int i = 8;
        i++;
        System.out.println(i);
    }
}
Run Code Online (Sandbox Code Playgroud)

对于这个程序,输出是9令人惊讶的:为什么我们在两个程序中使用相同的值和相同的增量运算符得到不同的值?

java

1
推荐指数
1
解决办法
136
查看次数

标签 统计

java ×1