本文主要是介绍关于Java中自增操作的陷阱题目,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
class Test {public static void main(String[] args) {int j = 0;for (int i = 0; i < 100; i++) {j = j++;}System.out.println(j);}
}
输出:0
详细地看一下自增操作和赋值操作的组合。特定语句是:
j = j++;
这个语句的执行可以分解为以下步骤:
后缀自增操作:当我们看到 j++,它是一个后缀自增。这意味着首先返回 j 的当前值,然后 j 的值自增。
赋值操作:我们有 j = …。这是一个赋值操作,将等号右边的值赋给 j。
现在,结合这两个操作,考虑 j 的初始值为 0:
j++ 先返回 0(因为它是后缀自增),然后 j 的值增加到 1。
但是,由于赋值操作,返回的 0 立即被赋予 j,这会撤销前面的自增操作。所以,j 的值又变回 0。
这样的过程在每次循环中都会发生,所以无论循环执行多少次,j 的值都始终保持为 0。
这篇关于关于Java中自增操作的陷阱题目的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!