Dalam artikel ini, kami akan mempelajari segala-galanya mengenai pelbagai jenis operator dalam bahasa pengaturcaraan C # dan cara menggunakannya.
Pengendali adalah simbol yang digunakan untuk melakukan operasi pada operan. Operan mungkin pemboleh ubah dan / atau pemalar.
Sebagai contoh , di 2+3
, +
adalah pengendali yang digunakan untuk menjalankan operasi penambahan, semasa 2
dan 3
merupakan operan.
Pengendali digunakan untuk memanipulasi pemboleh ubah dan nilai dalam program. C # menyokong sebilangan operator yang dikelaskan berdasarkan jenis operasi yang mereka lakukan.
1. Pengendali Tugasan Asas
Pengendali penugasan asas (=) digunakan untuk memberikan nilai kepada pemboleh ubah. Sebagai contoh,
berganda x; x = 50.05;
Di sini, 50.05 diberikan kepada x.
Contoh 1: Pengendali Tugasan Asas
using System; namespace Operator ( class AssignmentOperator ( public static void Main(string() args) ( int firstNumber, secondNumber; // Assigning a constant to variable firstNumber = 10; Console.WriteLine("First Number = (0)", firstNumber); // Assigning a variable to another variable secondNumber = firstNumber; Console.WriteLine("Second Number = (0)", secondNumber); ) ) )
Semasa kita menjalankan program, outputnya adalah:
Nombor Pertama = 10 Nombor Kedua = 10
Ini adalah contoh mudah yang menunjukkan penggunaan pengendali tugasan.
Anda mungkin perhatikan penggunaan kurungan keriting ( )
dalam contoh. Kami akan membincangkannya dalam format rentetan. Buat masa ini, ingatlah bahawa (0)
digantikan oleh pemboleh ubah pertama yang mengikuti rentetan, (1)
digantikan oleh pemboleh ubah kedua dan seterusnya.
2. Pengendali Aritmetik
Pengendali aritmetik digunakan untuk melakukan operasi aritmetik seperti penambahan, pengurangan, pendaraban, pembahagian, dll.
Sebagai contoh,
int x = 5; int y = 10; int z = x + y; // z = 15Pengendali Aritmetik C #
Pengendali | Nama Pengendali | Contohnya |
---|---|---|
+ | Pengendali Tambahan | 6 + 3 menilai hingga 9 |
- | Pengendali Penolakan | 10 - 6 menilai hingga 4 |
* | Pengendali Pendaraban | 4 * 2 menilai hingga 8 |
/ | Pengendali Bahagian | 10/5 menilai hingga 2 |
% | Pengendali Modulo (Sisa) | 16% 3 menilai hingga 1 |
Contoh 2: Pengendali Aritmetik
using System; namespace Operator ( class ArithmeticOperator ( public static void Main(string() args) ( double firstNumber = 14.40, secondNumber = 4.60, result; int num1 = 26, num2 = 4, rem; // Addition operator result = firstNumber + secondNumber; Console.WriteLine("(0) + (1) = (2)", firstNumber, secondNumber, result); // Subtraction operator result = firstNumber - secondNumber; Console.WriteLine("(0) - (1) = (2)", firstNumber, secondNumber, result); // Multiplication operator result = firstNumber * secondNumber; Console.WriteLine("(0) * (1) = (2)", firstNumber, secondNumber, result); // Division operator result = firstNumber / secondNumber; Console.WriteLine("(0) / (1) = (2)", firstNumber, secondNumber, result); // Modulo operator rem = num1 % num2; Console.WriteLine("(0) % (1) = (2)", num1, num2, rem); ) ) )
Semasa kita menjalankan program, outputnya adalah:
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
Operasi aritmetik dijalankan dalam contoh di atas. Pemboleh ubah boleh digantikan oleh pemalar dalam penyataan. Sebagai contoh,
hasil = 4.5 + 2.7; // hasil akan bertahan 7.2 hasil = nombor pertama - 3.2; // keputusan akan berlangsung 11.2
3. Pengendali Perhubungan
Operator hubungan digunakan untuk memeriksa hubungan antara dua operan. Sekiranya hubungan itu benar, hasilnya akan berlaku true
, jika tidak, ia akan mengakibatkan false
.
Operator hubungan digunakan dalam membuat keputusan dan gelung.
C # Pengendali PerhubunganPengendali | Nama Pengendali | Contohnya |
---|---|---|
== | Sama dengan | 6 == 4 menilai menjadi salah |
> | Lebih besar daripada | 3> -1 menilai menjadi benar |
< | Kurang daripada | 5 <3 dinilai menjadi salah |
> = | Lebih besar daripada atau sama dengan | 4> = 4 dinilai menjadi benar |
<= | Kurang daripada atau sama dengan | 5 <= 3 dinilai menjadi salah |
! = | Tidak sama dengan | 10! = 2 menilai menjadi benar |
Contoh 3: Pengendali Perhubungan
using System; namespace Operator ( 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) = 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); ) ) )
Semasa kita menjalankan program, outputnya adalah:
10 == 20 mengembalikan Palsu 10> 20 mengembalikan Palsu 10 = 20 mengembalikan Palsu 10 <= 20 mengembalikan Benar 10! = 20 mengembalikan Benar
4. Pengendali Logik
Operator logik digunakan untuk melaksanakan operasi logik seperti and
, or
. Pengendali logik beroperasi pada ungkapan boolean ( true
dan false
) dan mengembalikan nilai boolean. Pengendali logik digunakan dalam membuat keputusan dan gelung.
Berikut adalah bagaimana hasilnya dinilai untuk logik AND
dan OR
pengendali.
Operan 1 | Operan 2 | ATAU (||) | DAN (&&) |
---|---|---|---|
benar | benar | benar | benar |
benar | salah | benar | salah |
salah | benar | benar | salah |
salah | salah | salah | salah |
Dengan kata mudah, jadual dapat diringkaskan sebagai:
- Sekiranya salah satu operan itu benar,
OR
pengendali akan menilai iatrue
. - Sekiranya salah satu operasi itu salah,
AND
pengendali akan menilai iafalse
.
Contoh 4: Pengendali Logik
using System; namespace Operator ( class LogicalOperator ( public static void Main(string() args) ( bool result; int firstNumber = 10, secondNumber = 20; // OR operator result = (firstNumber == secondNumber) || (firstNumber> 5); Console.WriteLine(result); // AND operator result = (firstNumber == secondNumber) && (firstNumber> 5); Console.WriteLine(result); ) ) )
Semasa kita menjalankan program, outputnya adalah:
Betul salah
5. Pengendali Tidak Berguna
Tidak seperti pengendali lain, pengendali unary beroperasi pada satu operasi.
Pengendali C # unaryPengendali | Nama Pengendali | Penerangan |
---|---|---|
+ | Unary Plus | Meninggalkan tanda operan sebagaimana adanya |
- | Tidak Berkurang | Membalikkan tanda operan |
++ | Kenaikan | Nilai kenaikan sebanyak 1 |
- | Penurunan | Nilai penurunan sebanyak 1 |
! | Negasi Logik (Tidak) | Membalikkan nilai boolean |
Contoh 5: Pengendali Tidak Berguna
using System; namespace Operator ( 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)); ) ) )
Semasa kita menjalankan program, outputnya adalah:
+ nombor = 10 -nombor = -10 ++ nombor = 11 --nombor = 10! bendera = Salah
Pengendali kenaikan (++)
dan penurunan (--)
boleh digunakan sebagai awalan dan pasca perbaikan. Sekiranya digunakan sebagai awalan, perubahan nilai pemboleh ubah dilihat pada baris yang sama dan jika digunakan sebagai perbaikan akhir, perubahan nilai pemboleh ubah dilihat pada baris berikutnya. Ini akan jelas dengan contoh di bawah.
Contoh 6: Pengendali pos dan kenaikan sebelum di C #
using System; namespace Operator ( class UnaryOperator ( public static void Main(string() args) ( int number = 10; Console.WriteLine((number++)); Console.WriteLine((number)); Console.WriteLine((++number)); Console.WriteLine((number)); ) ) )
Semasa kita menjalankan program, outputnya adalah:
10 11 12 12
We can see the effect of using ++
as prefix and postfix. When ++
is used after the operand, the value is first evaluated and then it is incremented by 1
. Hence the statement
Console.WriteLine((number++));
prints 10
instead of 11
. After the value is printed, the value of number is incremented by 1
.
The process is opposite when ++
is used as prefix. The value is incremented before printing. Hence the statement
Console.WriteLine((++number));
prints 12
.
The case is same for decrement operator (--)
.
6. Ternary Operator
The ternary operator ? :
operates on three operands. It is a shorthand for if-then-else
statement. Ternary operator can be used as follows:
variable = Condition? Expression1 : Expression2;
Pengendali ternary berfungsi seperti berikut:
- Sekiranya ungkapan yang dinyatakan oleh Condition adalah
true
, hasil Expression1 diberikan kepada pemboleh ubah. - Sekiranya ada
false
, hasil Expression2 diberikan kepada pemboleh ubah.
Contoh 7: Operator Ternary
using System; namespace Operator ( class TernaryOperator ( public static void Main(string() args) ( int number = 10; string result; result = (number % 2 == 0)? "Even Number" : "Odd Number"; Console.WriteLine("(0) is (1)", number, result); ) ) )
Semasa kita menjalankan program, outputnya adalah:
10 ialah nombor genap
Untuk mengetahui lebih lanjut, lawati operator C # ternary.
7. Pengendali Bitwise dan Bit Shift
Pengendali bitwise dan bit shift digunakan untuk melakukan operasi manipulasi bit.
Pengendali C # Bitwise dan Bit ShiftPengendali | Nama Pengendali |
---|---|
~ | Pelengkap Bitwise |
& | Sedikit demi sedikit DAN |
| | Sedikit demi sedikit ATAU |
^ | Bitwise Exclusive ATAU |
<< | Anjakan Kiri Bitwise |
>> | Pergeseran Kanan Bitwise |
Contoh 8: Pengendali Bitwise dan Bit Shift
using System; namespace Operator ( class BitOperator ( public static void Main(string() args) ( int firstNumber = 10; int secondNumber = 20; int 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; Console.WriteLine("(0)>> 2 = (1)", firstNumber, result); ) ) )
Semasa kita menjalankan program, outputnya adalah:
~ 10 = -11 10 & 20 = 0 10 | 20 = 30 10 20 = 30 10 <> 2 = 2
Untuk mengetahui lebih lanjut, lawati operator C # Bitwise dan Bit Shift.
8. Pengendali Tugasan Kompaun
C # Pengendali Tugasan KompaunPengendali | Nama Pengendali | Contohnya | Bersamaan dengan |
---|---|---|---|
+ = | Tugasan Tambahan | x += 5 | x = x + 5 |
- = | Tugasan Penolakan | x -= 5 | x = x - 5 |
* = | Tugasan Pendaraban | x *= 5 | x = x * 5 |
/ = | Tugasan Bahagian | x /= 5 | x = x / 5 |
% = | Tugasan Modulo | x %= 5 | x = x % 5 |
& = | Bitwise DAN Tugasan | x &= 5 | x = x & 5 |
| = | Bitwise ATAU Tugasan | x |= 5 | x = x | 5 |
= | Tugasan Bitor XOR | x ^= 5 | x = x 5 |
<< = | Tugasan Shift Kiri | x <<= 5 | x = x << 5 |
>> = | Tugasan Pergeseran Kanan | x>>= 5 | x = x>> 5 |
=> | Pengendali Lambda | x => x*x | Returns x*x |
Contoh 9: Pengendali Tugasan Kompaun
using System; namespace Operator ( class BitOperator ( 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 <>= 3; Console.WriteLine(number); ) ) )
Semasa kita menjalankan program, outputnya adalah:
15 12 24 8 2 2 14 2 8 1
Kami akan membincangkan mengenai pengendali Lambda dalam tutorial kemudian.