V tem članku bomo izvedeli vse o različnih vrstah operaterjev v programskem jeziku C # in kako jih uporabljati.
Operatorji so simboli, ki se uporabljajo za izvajanje operacij nad operandi. Operandi so lahko spremenljivke in / ali konstante.
Na primer , v 2+3
, +
je gospodarski subjekt, ki se uporablja za opravljanje seštevanje delovanje, medtem ko 2
in 3
sta operanda.
Operaterji se uporabljajo za manipulacijo spremenljivk in vrednosti v programu. C # podpira številne operaterje, ki so razvrščeni glede na vrsto operacij, ki jih izvajajo.
1. Osnovni operater dodelitve
Osnovni operator dodelitve (=) se uporablja za dodelitev vrednosti spremenljivkam. Na primer
dvojni x; x = 50,05;
Tu je x dodeljeno 50,05.
Primer 1: Osnovni operater dodelitve
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); ) ) )
Ko zaženemo program, bo rezultat:
Prva številka = 10 Druga številka = 10
To je preprost primer, ki prikazuje uporabo operaterja dodelitve.
Morda ste v primeru opazili uporabo kodrastih oklepajev ( )
. O njih bomo razpravljali v oblikovanju nizov. Zaenkrat ne pozabite, da (0)
je nadomeščena s prvo spremenljivko, ki sledi nizu, (1)
nadomeščena z drugo spremenljivko itd.
2. Aritmetični operaterji
Aritmetični operatorji se uporabljajo za izvajanje aritmetičnih operacij, kot so seštevanje, odštevanje, množenje, deljenje itd.
Na primer
int x = 5; int y = 10; int z = x + y; // z = 15C # Aritmetični operaterji
Operater | Ime operaterja | Primer |
---|---|---|
+ | Operater seštevanja | 6 + 3 oceni na 9 |
- | Operator odštevanja | 10 - 6 oceni na 4 |
* | Operator množenja | 4 * 2 oceni na 8 |
/ | Operater oddelka | 10/5 oceni na 2 |
% | Modulo Operator (Preostanek) | 16% 3 oceni na 1 |
Primer 2: Aritmetični operatorji
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); ) ) )
Ko zaženemo program, bo rezultat:
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
Aritmetične operacije se izvajajo v zgornjem primeru. Spremenljivke lahko v stavkih nadomestimo s konstantami. Na primer
rezultat = 4,5 + 2,7; // rezultat bo vseboval 7,2 rezultat = firstNumber - 3,2; // rezultat bo imel 11.2
3. Relacijski operaterji
Relacijski operatorji se uporabljajo za preverjanje razmerja med dvema operandoma. Če je razmerje res, bo rezultat rezultat true
, sicer bo false
.
Relacijski operaterji se uporabljajo pri odločanju in zankah.
C # relacijski operaterjiOperater | Ime operaterja | Primer |
---|---|---|
== | Enako | 6 == 4 oceni na false |
> | Večji kot | 3> -1 oceni na true |
< | Manj kot | 5 <3 oceni na napačno |
> = | Večja ali enaka | 4> = 4 oceni na true |
<= | Manj ali enako | 5 <= 3 oceni na false |
! = | Ni enako | 10! = 2 oceni na true |
Primer 3: Relacijski operaterji
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); ) ) )
Ko zaženemo program, bo rezultat:
10 == 20 vrne False 10> 20 vrne False 10 = 20 vrne False 10 <= 20 vrne True 10! = 20 vrne True
4. Logični operaterji
Logični operaterji se uporabljajo za izvajanje logičnih operacij, kot and
so or
,. Logični operaterji delujejo z logičnimi izrazi ( true
in false
) in vrnejo logične vrednosti. Logični operaterji se uporabljajo pri odločanju in zankah.
Tu je opisano, kako se rezultat ocenjuje za logične AND
in OR
operaterje.
Operand 1 | Operand 2 | ALI (||) | IN (&&) |
---|---|---|---|
prav | prav | prav | prav |
prav | napačno | prav | napačno |
napačno | prav | prav | napačno |
napačno | napačno | napačno | napačno |
Z enostavnimi besedami lahko tabelo povzamemo kot:
- Če je eden od operandov resničen, ga bo
OR
operater ocenil natrue
. - Če je eden od operandov false, ga bo
AND
operater ocenil nafalse
.
Primer 4: Logični operaterji
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); ) ) )
Ko zaženemo program, bo rezultat:
Pravilno napačno
5. Unarni operaterji
Za razliko od drugih operaterjev unarni operaterji delujejo z enim samim operandom.
U # operaterji C #Operater | Ime operaterja | Opis |
---|---|---|
+ | Unary Plus | Pusti znak operanda, kakršen je |
- | Unary Minus | Pretvori znak operanda |
++ | Povečanje | Povečaj vrednost za 1 |
- | Zmanjšanje | Zmanjšaj vrednost za 1 |
! | Logična negacija (ni) | Pretvori vrednost logične vrednosti |
Primer 5: Unarski operaterji
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)); ) ) )
Ko zaženemo program, bo rezultat:
+ število = 10 -število = -10 ++ število = 11 --število = 10! zastava = Neresnično
Operatorja prirastka (++)
in pomanjševanja (--)
je mogoče uporabiti kot predpono in postfix. Če se uporablja kot predpona, je sprememba vrednosti spremenljivke vidna v isti vrstici, če se uporablja kot postfix, pa je sprememba vrednosti spremenljivke vidna v naslednji vrstici. To bo razvidno iz spodnjega primera.
Primer 6: Operatorji post in Pre Increment v 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)); ) ) )
Ko zaženemo program, bo rezultat:
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;
Ternarni operater deluje na naslednji način:
- Če je izraz, naveden s pogojem
true
, rezultat spremenljivke dodeljen rezultatu Expression1. - Če je
false
, je rezultat izraza2 dodeljen spremenljivki.
Primer 7: Ternarni operater
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); ) ) )
Ko zaženemo program, bo rezultat:
10 je sodo število
Če želite izvedeti več, obiščite operaterja C #.
7. Operaterji bitnega in bitnega premika
Operatorji bitnega in bitnega premika se uporabljajo za izvajanje operacij manipulacije bitov.
C # Bitwise in Bit Shift operaterjiOperater | Ime operaterja |
---|---|
~ | Bitno dopolnilo |
& | Bitovno AND |
| | Bitovno ALI |
^ | Bitno izključno ALI |
<< | Bitwise Left Shift |
>> | Bit-Right Shift |
Primer 8: Bitwise in 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); ) ) )
Ko zaženemo program, bo rezultat:
~ 10 = -11 10 & 20 = 0 10 | 20 = 30 10 20 = 30 10 <> 2 = 2
Če želite izvedeti več, obiščite C # Bitwise in Bit Shift operator.
8. Operaterji dodelitve sestavljenih delov
Operaterji dodelitve C #Operater | Ime operaterja | Primer | Enakovreden |
---|---|---|---|
+ = | Dodelitev Dodelitev | x += 5 | x = x + 5 |
- = | Dodelitev odštevanja | x -= 5 | x = x - 5 |
* = | Naloga množenja | x *= 5 | x = x * 5 |
/ = | Naloga divizije | x /= 5 | x = x / 5 |
% = | Dodelitev po modulu | x %= 5 | x = x % 5 |
& = | Bit-bit in dodelitev | x &= 5 | x = x & 5 |
| = | Bitna ali dodelitev | x |= 5 | x = x | 5 |
= | Bitna dodelitev XOR | x ^= 5 | x = x 5 |
<< = | Dodelitev leve izmene | x <<= 5 | x = x << 5 |
>> = | Dodelitev v desno | x>>= 5 | x = x>> 5 |
=> | Lambda operater | x => x*x | Returns x*x |
Primer 9: Operator dodelitve sestavljenih delov
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); ) ) )
Ko zaženemo program, bo rezultat:
15 12 24 8 2 2 14 2 8 1
O lambda operatorjih bomo razpravljali v kasnejših vajah.