These operators are used in a program to assign a value of the right-hand side to the left-hand side as shown below.
//10 is assign to the variable a
int a = 5;
//the value of b (10) is assigned to a
int b = 10;
int a = b;
int a += 2; //a=a+2
You can combine write in short version such as instead of writing, int a = a+5, you can write it as a += 5.
Following are the list of assignment operators used in C#.
| Operator | Description |
|---|---|
| = | Simple assignment operator, Assigns values from right side operands to left side operand.a = b + c; |
| += | Add AND assignment operator, It adds the right operand to the left operand and assigns the result to the left operand.a += b |
| -= | Subtract AND assignment operator, It subtracts the right operand from the left operand and assigns the result to the left operand.a -= b |
| *= | Multiply AND assignment operator, It multiplies the right operand with the left operand and assigns the result to the left operand.a *= b |
| /= | Divide AND assignment operator, It divides left operand with the right operand and assigns the result to the left operand.a /= b |
| %= | Modulus AND assignment operator, It takes modulus using two operands and assigns the result to the left operand.a %= b |
| <<= | Left shift AND assignment operator.a <<= 2 |
| >>= | Right shift AND assignment operator.a >>= 2 or a = a >> 2 |
| &= | Bitwise AND assignment operator.a &= 2 or a = a & 2 |
| ^= | Bitwise exclusive OR and assignment operator.a ^= 2 or a = a ^ 2 |
| |= | Bitwise inclusive OR and assignment operator.a |= 2 or a = a | 2 |
Example of C# Assignment Operators
using System;
namespace Operators
{
class Assignment
{
static void Main(string[] args)
{
int a = 11;
int result;
result = a;
Console.WriteLine("'+' operator, Result: {0}", result);
result += a;
Console.WriteLine("'+' operator, Result: {0}", result);
result -= a;
Console.WriteLine("'+' operator, Result: {0}", result);
result *= a;
Console.WriteLine("'+' operator, Result: {0}", result);
result /= a;
Console.WriteLine("'+' operator, Result: {0}", result);
result = 200;
result %= a;
Console.WriteLine("'+' operator, Result: {0}", result);
result <<= 2;
Console.WriteLine("'+' operator, Result: {0}", result);
result >>= 2;
Console.WriteLine("'+' operator, Result: {0}", result);
result &= 2;
Console.WriteLine("'+' operator, Result: {0}", result);
result ^= 2;
Console.WriteLine("'+' operator, Result: {0}", result);
result |= 2;
Console.WriteLine("'+' operator, Result: {0}", result);
}
}
}
Output:
'+' operator, Result: 11
'+' operator, Result: 22
'+' operator, Result: 11
'+' operator, Result: 121
'+' operator, Result: 11
'+' operator, Result: 2
'+' operator, Result: 8
'+' operator, Result: 2
'+' operator, Result: 2
'+' operator, Result: 0
'+' operator, Result: 2