Open In App

What is the Difference Between i++ and ++i in Java?

Improve
Improve
Like Article
Like
Save
Share
Report

++i and i++ both increment the value of i by 1 but in a different way. If ++ precedes the variable, it is called pre-increment operator and it comes after a variable, it is called post-increment operator.

Increment in java is performed in two ways,

1) Post-Increment (i++): we use i++ in our statement if we want to use the current value, and then we want to increment the value of i by 1.

2) Pre-Increment(++i): We use ++i in our statement if we want to increment the value of i by 1 and then use it in our statement.

Example

int i = 3;
int a = i++; // a = 3, i = 4
int b = ++a; // b = 4, a = 4

Example 1

Java




// Java program to demonstrate pre and post increment
// operators
  
import java.io.*;
  
class GFG {
    public static void main(String[] args)
    {
        // initialize i
        int i = 0;
        System.out.println("Post-Increment");
  
        // i values is incremented to 1 after returning
        // current value i.e; 0
        System.out.println(i++);
  
        // initialized to 0
        int j = 0;
        System.out.println("Pre-Increment");
  
        // j is incremented to 1 and then it's value is
        // returned
        System.out.println(++j);
    }
}


Output

Post-Increment
0
Pre-Increment
1

Example 2: Cannot apply the increment operator (++) on a constant value

Java




// Applying increment operator on a constant value
  
import java.io.*;
  
class GFG {
    public static void main(String[] args)
    {
  
        int x = ++10;
  
        System.out.println("Hello");
    }
}


Output

prog.java:8: error: unexpected type
          int x = ++ 10;
                     ^
  required: variable
  found:    value
1 error


Last Updated : 07 Jan, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads