Operator C# – Panduan Lengkap tentang Operator dalam C#
C# Operators
Jelajahi setiap kategori operator dalam C# dan pelajari cara menerapkannya secara efektif dalam kode Anda.
Operator adalah simbol yang melakukan tindakan pada satu atau lebih operand—variabel, konstanta, atau ekspresi. Dalam C#, operator dikelompokkan berdasarkan jenis operasi yang dijalankan, seperti aritmetika, logika, bitwise, dan lainnya.
1. Basic Assignment Operator
Operator assignment (=) menyimpan nilai dalam variabel.
double x; x = 50.05;
Example 1: Using the Assignment Operator
using System; namespace OperatorDemo { class AssignmentOperator { public static void Main(string[] args) { int firstNumber, secondNumber; firstNumber = 10; Console.WriteLine("First Number = {0}", firstNumber); secondNumber = firstNumber; Console.WriteLine("Second Number = {0}", secondNumber); } } }
Output:
First Number = 10 Second Number = 10
2. Arithmetic Operators
Operator aritmetika melakukan perhitungan matematika.
int x = 5; int y = 10; int z = x + y; // z = 15
C# Arithmetic Operators | Operator | Name | Example |
| + | Addition | 6 + 3 = 9 |
| - | Subtraction | 10 - 6 = 4 |
| * | Multiplication | 4 * 2 = 8 |
| / | Division | 10 / 5 = 2 |
| % | Modulo (remainder) | 16 % 3 = 1 |
Example 2: Arithmetic Operations
using System; namespace OperatorDemo { class ArithmeticOperator { public static void Main(string[] args) { double firstNumber = 14.40, secondNumber = 4.60, result; int num1 = 26, num2 = 4, rem; result = firstNumber + secondNumber; Console.WriteLine("{0} + {1} = {2}", firstNumber, secondNumber, result); result = firstNumber - secondNumber; Console.WriteLine("{0} - {1} = {2}", firstNumber, secondNumber, result); result = firstNumber * secondNumber; Console.WriteLine("{0} * {1} = {2}", firstNumber, secondNumber, result); result = firstNumber / secondNumber; Console.WriteLine("{0} / {1} = {2}", firstNumber, secondNumber, result); rem = num1 % num2; Console.WriteLine("{0} % {1} = {2}", num1, num2, rem); } } }
Output:
14.4 + 4.6 = 19 14.4 - 4.6 = 9.8 14.4 * 4.6 = 66.24 14.4 / 4.6 = 3.1304347826087 26 % 4 = 2
3. Relational Operators
Operator ini membandingkan dua operand dan mengembalikan hasil boolean.
C# Relational Operators | Operator | Name | Example |
| == | Equals | 6 == 4 → false |
| > | Greater than | 3 > -1 → true |
| < | Less than | 5 < 3 → false |
| >= | Greater than or equal | 4 >= 4 → true |
| <= | Less than or equal | 5 <= 3 → false |
| != | Not equal | 10 != 2 → true |
Example 3: Relational Checks
using System; namespace OperatorDemo { class RelationalOperator { public static void Main(string[] args) { bool result; int firstNumber = 10, secondNumber = 20; result = (firstNumber==secondNumber); Console.WriteLine("{0} == {1} returns {2}",firstNumber, secondNumber, result); result = (firstNumber > secondNumber); Console.WriteLine("{0} > {1} returns {2}",firstNumber, secondNumber, result); result = (firstNumber < secondNumber); Console.WriteLine("{0} < {1} returns {2}",firstNumber, secondNumber, result); result = (firstNumber >= secondNumber); Console.WriteLine("{0} >= {1} returns {2}",firstNumber, secondNumber, result); result = (firstNumber <= secondNumber); Console.WriteLine("{0} <= {1} returns {2}",firstNumber, secondNumber, result); result = (firstNumber != secondNumber); Console.WriteLine("{0} != {1} returns {2}",firstNumber, secondNumber, result); } } }
Output:
10 == 20 returns False 10 > 20 returns False 10 < 20 returns True 10 >= 20 returns False 10 <= 20 returns True 10 != 20 returns True
4. Logical Operators
Operator logika mengevaluasi ekspresi boolean.
C# Logical Operators | Operand 1 | Operand 2 | OR (||) | AND (&&) |
| true | true | true | true |
| true | false | true | false |
| false | true | true | false |
| false | false | false | false |
- Jika salah satu operand
true, operator OR menghasilkan true. - Kedua operand harus
true agar AND mengembalikan true.
Example 4: Logical Operators
using System; namespace OperatorDemo { class LogicalOperator { public static void Main(string[] args) { bool result; int firstNumber = 10, secondNumber = 20; result = (firstNumber == secondNumber) || (firstNumber > 5); Console.WriteLine(result); result = (firstNumber == secondNumber) && (firstNumber > 5); Console.WriteLine(result); } } }
Output:
True False
5. Unary Operators
Operator unary bertindak pada satu operand.
C# Unary Operators | Operator | Name | Description |
| + | Unary plus | Leaves sign unchanged |
| - | Unary minus | Negates sign |
| ++ | Increment | Increase by 1 |
| -- | Decrement | Decrease by 1 |
| ! | Logical NOT | Invert boolean |
Example 5: Unary Operators
using System; namespace OperatorDemo { class UnaryOperator { public static void Main(string[] args) { int number = 10, result; bool flag = true; result = +number; Console.WriteLine("+number = " + result); result = -number; Console.WriteLine("-number = " + result); result = ++number; Console.WriteLine("++number = " + result); result = --number; Console.WriteLine("--number = " + result); Console.WriteLine("!flag = " + (!flag)); } } }
Output:
+number = 10 -number = -10 ++number = 11 --number = 10 !flag = False
Example 6: Prefix vs. Postfix Increment
using System; namespace OperatorDemo { class UnaryOperator { public static void Main(string[] args) { int number = 10; Console.WriteLine(number++); // 10 Console.WriteLine(number); // 11 Console.WriteLine(++number); // 12 Console.WriteLine(number); // 12 } } }
Output:
10 11 12 12
6. Ternary Operator
Operator ternary (? :) menyatukan pernyataan if-else menjadi satu baris.
variable = Condition ? Expression1 : Expression2;
Jika Condition adalah true, Expression1 dievaluasi; jika tidak, Expression2 digunakan.
Example 7: Using the Ternary Operator
using System; namespace OperatorDemo { class TernaryOperator { public static void Main(string[] args) { int number = 10; string result = (number % 2 == 0) ? "Even Number" : "Odd Number"; Console.WriteLine("{0} is {1}", number, result); } } }
Output:
10 is Even Number
Pelajari lebih lanjut tentang C# ternary operator.
7. Bitwise & Bit Shift Operators
Operator ini memanipulasi bit individual dari tipe integral.
C# Bitwise & Bit Shift Operators | Operator | Name |
| ~ | Bitwise complement |
| & | AND |
| | | OR |
| ^ | XOR |
| << | Left shift |
| >> | Right shift |
Example 8: Bitwise Operations
using System; namespace OperatorDemo { class BitOperator { public static void Main(string[] args) { int firstNumber = 10, secondNumber = 20, result; result = ~firstNumber; Console.WriteLine("~{0} = {1}", firstNumber, result); result = firstNumber & secondNumber; Console.WriteLine("{0} & {1} = {2}", firstNumber, secondNumber, result); result = firstNumber | secondNumber; Console.WriteLine("{0} | {1} = {2}", firstNumber, secondNumber, result); result = firstNumber ^ secondNumber; Console.WriteLine("{0} ^ {1} = {2}", firstNumber, secondNumber, result); result = firstNumber << 2; Console.WriteLine("{0} << 2 = {1}", firstNumber, result); result = firstNumber >> 2; Console.WriteLine("{0} >> 2 = {1}", firstNumber, result); } } }
Output:
~10 = -11 10 & 20 = 0 10 | 20 = 30 10 ^ 20 = 30 10 << 2 = 40 10 >> 2 = 2
Untuk wawasan lebih dalam, kunjungi C# Bitwise and Bit Shift operators guide.
8. Compound Assignment Operators
Operator ini menggabungkan operasi aritmetika dengan assignment.
C# Compound Assignment Operators | Operator | Name | Example | Equivalent To |
| += | Addition assignment | x += 5 | x = x + 5 |
| -= | Subtraction assignment | x -= 5 | x = x - 5 |
| *= | Multiplication assignment | x *= 5 | x = x * 5 |
| /= | Division assignment | x /= 5 | x = x / 5 |
| %= | Modulo assignment | x %= 5 | x = x % 5 |
| &= | Bitwise AND assignment | x &= 5 | x = x & 5 |
| |= | Bitwise OR assignment | x |= 5 | x = x | 5 |
| ^= | Bitwise XOR assignment | x ^= 5 | x = x ^ 5 |
| <<= | Left shift assignment | x <<= 5 | x = x << 5 |
| >>= | Right shift assignment | x >>= 5 | x = x >> 5 |
| => | Lambda operator | x => x * x | Returns x squared |
Example 9: Compound Assignment Usage
using System; namespace OperatorDemo { class CompoundOperator { public static void Main(string[] args) { int number = 10; number += 5; Console.WriteLine(number); number -= 3; Console.WriteLine(number); number *= 2; Console.WriteLine(number); number /= 3; Console.WriteLine(number); number %= 3; Console.WriteLine(number); number &= 10; Console.WriteLine(number); number |= 14; Console.WriteLine(number); number ^= 12; Console.WriteLine(number); number <<= 2; Console.WriteLine(number); number >>= 3; Console.WriteLine(number); } } }
Output:
15 12 24 8 2 2 14 2 8 1
Tutorial selanjutnya akan membahas lambda expressions secara detail.