In java ++i would have any meaning in for if there would be something like:
for (int i = 0, j = 2; i < N && j < M;  j+=++i) or something like that. For's step expression is evaluated after loop code block and before next iteration.

So it starts from 1 to Long.MAX_VALUE - 1. ;)