In dit artikel leren we alles over de verschillende soorten operators in de programmeertaal C # en hoe je ze kunt gebruiken.
Operators zijn symbolen die worden gebruikt om bewerkingen op operanden uit te voeren. Operanden kunnen variabelen en / of constanten zijn.
Bijvoorbeeld , in 2+3
, +
een operator die wordt gebruikt optelling uit te voeren, terwijl 2
en 3
zijn operands.
Operatoren worden gebruikt om variabelen en waarden in een programma te manipuleren. C # ondersteunt een aantal operators die zijn geclassificeerd op basis van het type bewerkingen dat ze uitvoeren.
1. Basistoewijzing Operator
Basis toewijzingsoperator (=) wordt gebruikt om waarden aan variabelen toe te wijzen. Bijvoorbeeld,
dubbele X; x = 50,05;
Hier wordt 50.05 toegewezen aan x.
Voorbeeld 1: Basic Assignment Operator
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); ) ) )
Wanneer we het programma uitvoeren, is de uitvoer:
Eerste nummer = 10 Tweede nummer = 10
Dit is een eenvoudig voorbeeld dat het gebruik van de toewijzingsoperator laat zien.
Het is je misschien opgevallen dat ( )
in het voorbeeld accolades worden gebruikt. We zullen erover discussiëren in stringopmaak. Houd er voorlopig rekening mee dat (0)
wordt vervangen door de eerste variabele die volgt op de tekenreeks, (1)
wordt vervangen door de tweede variabele enzovoort.
2. Rekenkundige operatoren
Rekenkundige operatoren worden gebruikt om rekenkundige bewerkingen uit te voeren zoals optellen, aftrekken, vermenigvuldigen, delen, enz.
Bijvoorbeeld,
int x = 5; int y = 10; int z = x + Y; // z = 15C # Rekenkundige operatoren
Operator | Naam operator | Voorbeeld |
---|---|---|
+ | Toevoeging Operator | 6 + 3 resulteert in 9 |
- | Operator voor aftrekken | 10 - 6 resulteert in 4 |
* | Vermenigvuldigingsoperator | 4 * 2 resulteert in 8 |
/ | Divisie Operator | 10/5 evalueert naar 2 |
% | Modulo Operator (rest) | 16% 3 komt uit op 1 |
Voorbeeld 2: rekenkundige operatoren
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); ) ) )
Wanneer we het programma uitvoeren, is de uitvoer:
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
In het bovenstaande voorbeeld worden rekenkundige bewerkingen uitgevoerd. Variabelen kunnen worden vervangen door constanten in de instructies. Bijvoorbeeld,
resultaat = 4,5 + 2,7; // resultaat bevat 7.2 resultaat = firstNumber - 3.2; // resultaat blijft 11.2
3. Relationele operators
Relationele operatoren worden gebruikt om de relatie tussen twee operanden te controleren. Als de relatie waar is, zal het resultaat zijn true
, anders zal het resulteren in false
.
Relationele operatoren worden gebruikt bij besluitvorming en loops.
C # Relationele operatorsOperator | Naam operator | Voorbeeld |
---|---|---|
== | Gelijk aan | 6 == 4 resulteert in false |
> | Groter dan | 3> -1 resulteert in waar |
< | Minder dan | 5 <3 resulteert in onwaar |
> = | Groter dan of gelijk aan | 4> = 4 resulteert in waar |
<= | Minder dan of gelijk aan | 5 <= 3 resulteert in onwaar |
! = | Niet gelijk aan | 10! = 2 resulteert in waar |
Voorbeeld 3: relationele operatoren
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); ) ) )
Wanneer we het programma uitvoeren, is de uitvoer:
10 == 20 retourneert False 10> 20 retourneert False 10 = 20 retourneert False 10 <= 20 retourneert True 10! = 20 retourneert True
4. Logische operators
Logische operatoren worden gebruikt voor logische bewerking zoals uit te voeren and
, or
. Logische operatoren werken op booleaanse expressies ( true
en false
) en retourneren booleaanse waarden. Logische operators worden gebruikt bij besluitvorming en loops.
Hier is hoe het resultaat wordt geëvalueerd voor logische AND
en OR
operatoren.
Operand 1 | Operand 2 | OF (||) | EN (&&) |
---|---|---|---|
waar | waar | waar | waar |
waar | false | waar | false |
false | waar | waar | false |
false | false | false | false |
In eenvoudige bewoordingen kan de tabel worden samengevat als:
- Als een van de operand waar is,
OR
evalueert de operator deze naartrue
. - Als een van de operand onwaar is, zal de
AND
operator deze evalueren naarfalse
.
Voorbeeld 4: Logische operators
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); ) ) )
Wanneer we het programma uitvoeren, is de uitvoer:
Waar onwaar
5. Unaire operatoren
In tegenstelling tot andere operators werken de unaire operators op één operand.
C # unaire operatorenOperator | Naam operator | Omschrijving |
---|---|---|
+ | Unary Plus | Laat het teken van operand zoals het is |
- | Unair minpunt | Keert het teken van operand om |
++ | Toename | Waarde verhogen met 1 |
- | Afname | Waarde verlagen met 1 |
! | Logische ontkenning (niet) | Keert de waarde van een booleaanse waarde om |
Voorbeeld 5: Unaire operatoren
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)); ) ) )
Wanneer we het programma uitvoeren, is de uitvoer:
+ getal = 10 -getal = -10 ++ getal = 11 --getal = 10! vlag = False
De operatoren voor verhogen (++)
en verlagen (--)
kunnen worden gebruikt als prefix en postfix. Indien gebruikt als prefix, wordt de verandering in waarde van variabele gezien op dezelfde regel en indien gebruikt als postfix, wordt de verandering in waarde van variabele gezien op de volgende regel. Dit wordt duidelijk door het onderstaande voorbeeld.
Voorbeeld 6: Operators Post en Pre Increment in 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)); ) ) )
Wanneer we het programma uitvoeren, is de uitvoer:
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;
De ternaire operator werkt als volgt:
- Als de uitdrukking die wordt vermeld door voorwaarde is
true
, wordt het resultaat van uitdrukking1 toegewezen aan variabele. - Als dit het geval is
false
, wordt het resultaat van Expression2 toegewezen aan variabele.
Voorbeeld 7: Ternaire operator
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); ) ) )
Wanneer we het programma uitvoeren, is de uitvoer:
10 is een even getal
Ga voor meer informatie naar C # ternaire operator.
7. Bitwise en Bit Shift-operators
Bitwise en bit shift-operators worden gebruikt om bitmanipulatiebewerkingen uit te voeren.
C # Bitwise en Bit Shift-operatorsOperator | Naam operator |
---|---|
~ | Bitsgewijze aanvulling |
& | Bitwise EN |
| | Bitsgewijs OF |
^ | Bitwise Exclusief OF |
<< | Bitsgewijs naar links verschuiven |
>> | Bitwise Right Shift |
Voorbeeld 8: Bitwise en Bit Shift-operator
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); ) ) )
Wanneer we het programma uitvoeren, is de uitvoer:
~ 10 = -11 10 & 20 = 0 10 | 20 = 30 10 20 = 30 10 <> 2 = 2
Ga voor meer informatie naar C # Bitwise en Bit Shift-operator.
8. Samengestelde toewijzingsoperatoren
C # Samengestelde toewijzingsoperatorenOperator | Naam operator | Voorbeeld | Gelijk aan |
---|---|---|---|
+ = | Toevoegingstoewijzing | x += 5 | x = x + 5 |
- = | Aftrekopdracht | x -= 5 | x = x - 5 |
* = | Toewijzing van vermenigvuldiging | x *= 5 | x = x * 5 |
/ = | Divisie-toewijzing | x /= 5 | x = x / 5 |
% = | Modulo-toewijzing | x %= 5 | x = x % 5 |
& = | Bitwise EN Toewijzing | x &= 5 | x = x & 5 |
| = | Bitsgewijs OF Toewijzing | x |= 5 | x = x | 5 |
= | Bitwise XOR-toewijzing | x ^= 5 | x = x 5 |
<< = | Toewijzing linker shift | x <<= 5 | x = x << 5 |
>> = | Toewijzing van rechter shift | x>>= 5 | x = x>> 5 |
=> | Lambda-operator | x => x*x | Returns x*x |
Voorbeeld 9: Samengestelde toewijzingsoperator
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); ) ) )
Wanneer we het programma uitvoeren, is de uitvoer:
15 12 24 8 2 2 14 2 8 1
We zullen het hebben over Lambda-operators in een latere tutorial.