java中关于自增的问题

img


为啥我的自增前面不能赋值给它本身,赋值之后count就变成0了

img

这你就需要了解下 count++ 和 ++count的区别了

  • count++ 这是 ++在后面, count++ 表达式的值为一开始的count, 然后 count再自增1
  • ++count 这是 ++在前面,++count 表达式的值为 count自增1 后的值。

再来 看下你的表达式, count = count++;

  • count++ 表达式的值为 一开始的count,也就是 0,
  • 因为 赋值的运算符 优先级 小于 ++运算符,所以 先计算 count++, count = 1,
  • 然后 count 被赋值 count++ 运算的值,也就是 count 最终又 等于 0。

这么写,相当于
temp = count
count = count + 1
count = temp

其实简单理解一下就是先用后加和先加后用的区别!!!