Skip to content

The difference between n++ VS ++n in Java

My Java teacher said it was better to use ++n instead of n++, I am not seeing the logic behind this. Does anyone know?

Answer

++n increments the value and returns the new one.

n++ increments the value and returns the old one.

Thus, n++ requires extra storage, as it has to keep track of the old value so it can return it after doing the increment.

I would expect the actual difference between these two to be negligible these days. I know a lot of compilers will optimize it so they’re identical if the return of n++ isn’t actually used, though I don’t know of Java does that.