Java中n ++ VS ++ n的区别

Moh*_*mad 5 java

我的Java老师说最好使用++ n而不是n ++,我没有看到这背后的逻辑.有人知道吗?

Her*_*rms 20

++n 递增值并返回新值.

n++递增值并返回值.

因此,n++需要额外的存储空间,因为它必须跟踪旧值,以便在执行增量后返回它.

我希望这两天之间的实际差异可以忽略不计.我知道很多编译器会优化它,所以如果n++没有实际使用返回它们是相同的,尽管我不知道Java会这样做.


Mch*_*chl 5

您的Java老师是(可能)指的事实,preincrementation是平时点点点点比postincrementation更快.我甚至不确定Java是否属于这种情况,因为我在C课程中学到了这一点.

"我们应该忘记小的效率,大约97%的时间说:过早的优化是所有邪恶的根源"

唐纳德克努特

在日常生活中,我会主要根据代码中最有意义的东西来使用前期或后期增量.