java - 后增量行为

标签 java increment post-increment pre-increment

<分区>

我有点怀疑。为什么下面的代码打印值 i=2。

int i=2;
i=i++;
System.out.println(i);

谁能解释一下第 2 行发生了什么。

所以在这里做++没有意义吗?

谢谢

最佳答案

i=i++;

因为首先发生分配,然后应用增量。

类似于:

首先 i 得到 2,然后进行++ 操作,但结果不会重新分配给 i,因此 i 值将保持为 2。

关于java - 后增量行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12147631/

相关文章:

c - unsigned int 在 while 循环中的表现如何?

java - Eclipse - IInAppBillingServide.aidl

java - 如何为 JOptionPane 发出不同的哔哔声?

java - 一 = 0;为什么 (++a+++a *++a) = 7?

php - 使用 UPDATE (mysql) 将数据库增加 1。我的代码有什么问题?

c - 为什么我的程序在给出 -1 之前不添加数字?

java - a = (a++) * (a++) 在 Java 中给出奇怪的结果

java - 创建不带 GUI 的按键监听器

java - JSF 如何通过 selectOneRadio 的 onchange 提交表单

ios - NSInteger 计数 4 次?