Java 后缀概念
可能重复:Java 后缀概念,java,Java,可能重复: 我很震惊地看到这个输出,想知道它是如何工作的内部请帮助我 int i=0; i = i++; System.out.println(i); i=i++; System.out.println(i); 输出为0和0。将其更改为 int i=0; i++;//note the removed i = System.out.println(i); i++;//note the removed i = System.out.println(i); 它将按预期工作 请参阅及其,并引用最相
我很震惊地看到这个输出,想知道它是如何工作的内部请帮助我
int i=0;
i = i++;
System.out.println(i);
i=i++;
System.out.println(i);
输出为0和0。将其更改为
int i=0;
i++;//note the removed i =
System.out.println(i);
i++;//note the removed i =
System.out.println(i);
它将按预期工作
请参阅及其,并引用最相关的部分
递增/递减运算符可以应用于操作数之前(前缀)或之后(后缀)。代码结果为++;和++结果;结果都将增加1。唯一的区别是前缀版本(++result)的计算结果为递增值,而后缀版本(result++)的计算结果为原始值。如果您只是执行一个简单的递增/递减操作,那么选择哪个版本并不重要。但是,如果在较大表达式的一部分中使用此运算符,则选择的运算符可能会产生显著的差异
阅读本文。我试着运行IDE(IntelliJ)中问题的代码,它甚至警告我i++的结果从未被使用过。Hanks Robin,我从你的评论和[janeg.ca/scjp/oper/prefix.html]中得到了答案。