C# Operator

In C#, operators are special symbols or keywords that are used to perform operations on variables and values. Operators are an essential part of C# programming, enabling developers to manipulate data and variables efficiently.

An operator in C# performs specific mathematical, logical, or bitwise operations, such as addition, subtraction, comparison, and more. They work with operands (variables, values, or expressions) to produce a result.

Every programming language uses operators, through which we can perform different actions on the data.

Operators allow the processing of primitive data types and objects. They take as input one or more operands and return some value as a result.

1. Arithmetic Operators

These operators are used for performing basic mathematical operations.

Operator
Description
Example
+
Addition: Adds two operands.
a+b
Subtraction: Subtracts the second operand from the first.
a-b
*
Multiplication: Multiplies two operands.
a*b
/
Division: Divides the first operand by the second. Returns quotient.
a/b
%
Modulus: Returns the remainder of a division operation.
a%b

Example:


int a = 20;
int b = 5;
Console.WriteLine(a + b);  // Output: 25 (Addition)
Console.WriteLine(a - b);  // Output: 15 (Subtraction)
Console.WriteLine(a * b);  // Output: 100 (Multiplication)
Console.WriteLine(a / b);  // Output: 4  (Division)
Console.WriteLine(a % b);  // Output: 0  (Remainder)

Note:

  1. When dividing two integers (int type), C# performs integer division and discards any fractional part.
  2. To get a floating-point result, one of the operands must be a floating-point type (e.g., double or float).

2. Relational (Comparison) Operators

These operators are used to compare two values. They return a boolean value (true or false).

Operator
Description
Example
==
Equal to: Returns true if both operands are equal.
a == b
!=
Not equal to: Returns true if operands are not equal.
a != b
>
Greater than: Returns true if the left operand is greater.
a > b
<
Less than: Returns true if the left operand is smaller.
a < b
>=
Greater than or equal to: Returns true if left operand is greater or equal.
a >= b
<=
Less than or equal to: Returns true if left operand is smaller or equal.
a <= b


Example:


int a = 20;
int b = 5;
Console.WriteLine(a == b);  // Output: false
Console.WriteLine(a != b);  // Output: true
Console.WriteLine(a > b);  // Output: true
Console.WriteLine(a < b);  // Output: false
Console.WriteLine(a >= b);  // Output: true
Console.WriteLine(a <= b);  // Output: false

3. Logical Operators

Logical operators are used to combine conditional statements.

Operator
Description
Example
&&
Logical AND: Returns true if both operands are true.
a && b
||
Logical OR: Returns true if at least one operands is true.
a || b
!
Logical NOT: Reverses the logical state of its operand.
!a


Example:


bool a = true;
bool b = false;

Console.WriteLine(a && b);  // Output: False (Both must be true)
Console.WriteLine(a || b);  // Output: True (At least one is true)
Console.WriteLine(!a);      // Output: False (Reverses the value)

4. Assignment Operators

These are used to assign values to variables. Some assignment operators combine arithmetic operations with assignment.

Operator
Description
Example
=
Assignment: Assigns the value on the right to the variable on the left.
a = b
+=
Add and assign: Adds the right operand to the left operand and assigns the result to the left operand.
a += b
-=
Subtract and assign: Subtracts the right operand from the left operand and assigns the result to the left operand.
a -= b
*=
Multiply and assign: Multiplies the left operand by the right operand and assigns the result to the left operand.
a *= b
/=
Divide and assign: Divides the left operand by the right operand and assigns the result to the left operand.
a /= b
%=
Modulus and assign: Takes the modulus of the left operand by the right operand and assigns the result to the left operand.
a %= b


Example:


int a = 20;
a += 10;  // a = a + 10 => num = 30
a -= 5;  // a = a - 5 => a = 25
a *= 2;  // a = a * 2 => a = 50
a /= 5;  // a = a / 5 => a = 10

Console.WriteLine(a);  // Output: 10

5. Ternary Operator

This is a shorthand for an if-else statement.

Syntax:


condition ? expression_if_true : expression_if_false

Example:


int age = 19;
string result = (age >= 18) ? 'Adult': 'Not Adult';
Console.WriteLine(result);  // Output: Adult

6. Unary Operators

These operators operate on a single operand.

Operator
Description
Example
++
Increment: Increases the operand by 1. Can be used in pre or post increment form.
++a or a++
--
Decrement: Decreases the operand by 1. Can be used in pre or post decrement form.
--a or a--
+
Unary plus: Indicates a positive value.
+a
-
Unary minus: Negates the operand.
-a
!
Logical NOT: Reverses the logical state of its operand.
!a


Example:


int x = 20;
Console.WriteLine(++x);  // Output: 21 (Pre-increment)
Console.WriteLine(x++);  // Output: 21 (Post-increment)
Console.WriteLine(x);    // Output: 22 (x is now 22)