![]() |
VOOZH | about |
Assignment operators in Java are used to assign values to variables and simplify expressions. They include both simple (=) and compound operators (like +=, -=), which combine operations with assignment. These operators help write cleaner and more concise code while handling value updates efficiently.
=) and compound (+=, -=, *=, /=, %=) assignments. The Assignment Operator is generally of two types. They are:
The Simple Assignment Operator is used with the “=” sign where the left side consists of the operand and the right side consists of a value. The value of the right side must be of the same data type that has been defined on the left side.
The Compound Operator is used where +,-,*, and / is used along with the = operator.
This is the most straightforward assignment operator, which is used to assign the value on the right to the variable on the left. This is the basic definition of an assignment operator and how it functions.
Syntax:
num1 = num2;
num is assigned: 10 name is assigned: GeeksforGeeks
This operator is a compound of '+' and '=' operators. It operates by adding the current value of the variable on the left to the value on the right and then assigning the result to the operand on the left.
Syntax:
num1 += num2;
num1 = 10 num2 = 20 num1 = 30
Note: In Java, the compound assignment operator (+=) performs implicit type casting.
- x = x + 4.5; -> gives a compile-time error (double -> int conversion not allowed).
- x += 4.5; -> works because it automatically casts the result to int, giving output 9.
This operator is a compound of '-' and '=' operators. It operates by subtracting the variable's value on the right from the current value of the variable on the left and then assigning the result to the operand on the left.
Syntax:
num1 -= num2;
num1 = 10 num2 = 20 num1 = -10
This operator is a compound of '*' and '=' operators. It operates by multiplying the current value of the variable on the left to the value on the right and then assigning the result to the operand on the left.
Syntax:
num1 *= num2;
num1 = 10 num2 = 20 num1 = 200
This operator is a compound of '/' and '=' operators. It operates by dividing the current value of the variable on the left by the value on the right and then assigning the quotient to the operand on the left.
Syntax:
num1 /= num2;
num1 = 20 num2 = 10 num1 = 2
This operator is a compound of '%' and '=' operators. It operates by dividing the current value of the variable on the left by the value on the right and then assigning the remainder to the operand on the left.
Syntax:
num1 %= num2;
num1 = 5 num2 = 3 num1 = 2
Performs bitwise AND operation and assigns the result. Works at binary level on bits of numbers.
Syntax:
variable &= value;
1
Performs bitwise OR operation and assigns the result. Sets bits where either operand has 1.
Syntax:
variable |= value;
7
Performs bitwise XOR and assigns the result. Sets bit to 1 only when bits are different.
Shifts bits to the left and assigns the result. Equivalent to multiplying by powers of 2.
Syntax:
variable <<= value;
10
Shifts bits to the right and assigns the result. Equivalent to dividing by powers of 2.
Syntax:
variable >>= value;
4