I believe that this question is different, because the other question was asking how the numbers were being incremented inside the println(). The accepted answer in the other question was not explaining that postfix increments the value after it is printed.

I have been reading from the Big Index, and I understand how and when to use postfixes, but I had no idea that prefixes existed. What does it mean when it says that 6 gets printed twice in this code? I thought that it added to the integer.

class PrePostDemo {
    public static void main(String[] args){
        int i = 3;
        i++;
        // prints 4
        System.out.println(i);
        ++i;               
        // prints 5
        System.out.println(i);
        // prints 6
        System.out.println(++i);
        // prints 6
        System.out.println(i++);
        // prints 7
        System.out.println(i);
    }
}

Why would it not print 4, 5, 6, 7, 8?

有帮助吗?

解决方案

Prefix will perform the addition/subtraction before executing the current statement of code. Postfix will perform it afterwards.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top