Increment operator is used to increment a value by 1. There are two varieties of increment operator:
- Post-Increment: Value is first used for computing the result and then incremented.
- Pre-Increment: Value is incremented first and then the result is computed.
Example
Java
import java.io.*;
class GFG {
public static void main (String[] args) {
int a = 5 ;
int b = 7 ;
int c = a++ + b;
System.out.println( "Post- Increment \n c = " + c);
int A = 5 ;
int B = 7 ;
int C = ++A + B;
System.out.println( "Pre- Increment \n C = " + C);
int m = 1 , n = 2 ;
int o = m++ + n + ++m;
System.out.println( "Example \n o = " + o);
}
}
|
Decrement operator is used for decrementing the value by 1. There are two varieties of decrement operators.
- Post-decrement: Value is first used for computing the result and then decremented.
- Pre-decrement: Value is decremented first and then the result is computed.
Example
Java
import java.io.*;
class GFG {
public static void main (String[] args) {
int a = 5 ;
int b = 7 ;
int c = a-- + b;
System.out.println( "Post- Decrement \n c = " + c);
int A = 5 ;
int B = 7 ;
int C = --A + B;
System.out.println( "Pre- Decrement \n C = " + C);
int m = 3 , n = 2 ;
int o = m-- + n + --m;
System.out.println( "Example \n o = " + o);
}
}
|
Now let us do Interesting facts about Increment and Decrement operators:
- Can only be applied to variables only
- Nesting of both operators is not allowed
- They are not operated over final variables
- Increment and Decrement Operators can not be applied to boolean.
Let us discuss these 4 facts as listed above and do implement them as follows:
Fact 1: Can be applied to variables only
We can apply ++ and — operator only for variables but not for the constant values. If we are trying to apply ++ and — operator on the constant value then we will get a compile-time error which we will be seeing in example 1B after the below example as follows:
Example 1:
Java
public class GFG {
public static void main(String[] args)
{
int a = 10 ;
int b = ++a;
System.out.println(b);
}
}
|
Example 2:
Java
public class GFG {
public static void main(String[] args)
{
int a = 10 ;
int b = ++a;
b = 10 ++;
System.out.println(b);
}
}
|
Output:

Fact 2: Nesting of both ++ and — operators are not allowed
Example
Java
public class GFG {
public static void main(String[] args)
{
int a = 10 ;
int b = ++(++a);
System.out.println(b);
}
}
|
Output:

Fact 3: Final variables can’t apply increment and decrement operator
The increment and decrement operators can not be applied to final variables because of the simple reason that their value can not be changed.
Example
Java
public class GFG {
public static void main(String[] args)
{
final int a = 10 ;
int b = ++a;
System.out.println(b);
}
}
|
Output:

Fact 4: Increment and Decrement Operators can not be applied to boolean
We can apply ++ and — operators for all primitive data types except Boolean type as it only has true and false which even sounds impractical.
Example
Java
public class GFG {
public static void main(String[] args)
{
boolean b = false ;
b++;
System.out.println(b);
}
}
|
Output:

This article is contributed by Bishal Kumar Dubey. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or if you want to share more information about the topic discussed above.