为什么使用 pre 和 post 运算符递增 i 值会给出奇怪的结果

  • 本文关键字:结果 pre 运算符 post java
  • 更新时间 :
  • 英文 :

int i = 0;
while(i < 5){
    i = i++;
    System.out.print(i);
}

输出是 000000... 无限

int i = 0;
while(i < 5)
{
    i = ++i;
    System.out.print(i);
}

输出为 12345

增量/递减运算符可以在(前缀(或 在(后缀(操作数之后。代码结果++;和++结果;将 两者都以结果递增 1 结束。唯一的区别是 前缀版本 (++result( 的计算结果为递增值, 而后缀版本 (result++( 的计算结果为原始版本 价值。如果您只是执行简单的递增/递减,则 选择哪个版本并不重要。但是如果你使用这个 运算符是较大表达式的一部分,您选择的运算符可以 产生重大影响。

从这个链接。

++i返回i+1i++返回i

最新更新