În acest articol, vom învăța totul despre diferitele tipuri de operatori în limbajul de programare C # și cum să le folosim.
Operatorii sunt simboluri care sunt utilizate pentru a efectua operații pe operanzi. Operanzii pot fi variabile și / sau constante.
De exemplu , in 2+3
, +
este un operator care este utilizat pentru a efectua operații de adăugare, în timp ce 2
și 3
sunt operanzi.
Operatorii sunt folosiți pentru a manipula variabile și valori într-un program. C # acceptă un număr de operatori care sunt clasificați pe baza tipului de operațiuni pe care le efectuează.
1. Operator de atribuire de bază
Operatorul de atribuire de bază (=) este utilizat pentru a atribui valori variabilelor. De exemplu,
x dublu; x = 50,05;
Aici, 50.05 este atribuit lui x.
Exemplul 1: Operator de atribuire de bază
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); ) ) )
Când rulăm programul, ieșirea va fi:
Primul număr = 10 Al doilea număr = 10
Acesta este un exemplu simplu care demonstrează utilizarea operatorului de atribuire.
Este posibil să fi observat utilizarea parantezelor crețate ( )
în exemplu. Vom discuta despre ele în formatarea șirurilor. Deocamdată, rețineți că (0)
este înlocuită de prima variabilă care urmează șirului, (1)
este înlocuită de a doua variabilă și așa mai departe.
2. Operatori aritmetici
Operatorii aritmetici sunt utilizați pentru a efectua operații aritmetice, cum ar fi adunarea, scăderea, multiplicarea, divizarea etc.
De exemplu,
int x = 5; int y = 10; int z = x + y; // z = 15C # Operatori aritmetici
Operator | Numele operatorului | Exemplu |
---|---|---|
+ | Operator de adăugare | 6 + 3 evaluează la 9 |
- | Operator de scădere | 10 - 6 evaluează la 4 |
* | Operator de multiplicare | 4 * 2 evaluează la 8 |
/ | Operator divizie | 10/5 evaluează la 2 |
% | Operator Modulo (Rest) | 16% 3 evaluează la 1 |
Exemplul 2: Operatori aritmetici
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); ) ) )
Când rulăm programul, ieșirea va fi:
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
Operațiunile aritmetice sunt efectuate în exemplul de mai sus. Variabilele pot fi înlocuite cu constante în instrucțiuni. De exemplu,
rezultat = 4,5 + 2,7; // rezultatul va avea 7.2 rezultat = firstNumber - 3.2; // rezultatul va avea 11.2
3. Operatori relaționali
Operatorii relaționali sunt utilizați pentru a verifica relația dintre doi operanzi. Dacă relația este adevărată, rezultatul va fi true
, altfel va avea ca rezultat false
.
Operatorii relaționali sunt utilizați în luarea deciziilor și în bucle.
C # Operatori relaționaliOperator | Numele operatorului | Exemplu |
---|---|---|
== | Egal cu | 6 == 4 se consideră fals |
> | Mai mare ca | 3> -1 se evaluează la adevărat |
< | Mai puțin decât | 5 <3 se consideră fals |
> = | Mai mare sau egal cu | 4> = 4 se evaluează la adevărat |
<= | Mai mic sau egal cu | 5 <= 3 se consideră fals |
! = | Nu este egal cu | 10! = 2 se evaluează la adevărat |
Exemplul 3: Operatori relaționali
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); ) ) )
Când rulăm programul, ieșirea va fi:
10 == 20 returnează False 10> 20 returnează False 10 = 20 returnează False 10 <= 20 returnează True 10! = 20 returnează True
4. Operatori logici
Operatorii logice sunt utilizate pentru a efectua operațiuni logice , cum ar fi and
, or
. Operatorii logici operează pe expresii booleene ( true
și false
) și returnează valori booleene. Operatorii logici sunt utilizați în luarea deciziilor și în bucle.
Iată cum este evaluat rezultatul pentru operatori AND
și logici OR
.
Operand 1 | Operandul 2 | SAU (||) | ȘI (&&) |
---|---|---|---|
Adevărat | Adevărat | Adevărat | Adevărat |
Adevărat | fals | Adevărat | fals |
fals | Adevărat | Adevărat | fals |
fals | fals | fals | fals |
În cuvinte simple, tabelul poate fi rezumat ca:
- Dacă unul dintre operandi este adevărat,
OR
operatorul îl va evalua latrue
. - Dacă unul dintre operandi este fals,
AND
operatorul îl va evalua lafalse
.
Exemplul 4: Operatori logici
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); ) ) )
Când rulăm programul, ieșirea va fi:
Adevarat fals
5. Operatori unari
Spre deosebire de alți operatori, operatorii unari operează pe un singur operand.
C # operatori unariOperator | Numele operatorului | Descriere |
---|---|---|
+ | Unary Plus | Lasă semnul operandului așa cum este |
- | Minus unar | Inversează semnul operandului |
++ | Creştere | Creșteți valoarea cu 1 |
- | Decrement | Reduceți valoarea cu 1 |
! | Negare logică (Nu) | Inversează valoarea unui boolean |
Exemplul 5: Operatori unari
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)); ) ) )
Când rulăm programul, ieșirea va fi:
+ număr = 10 -număr = -10 ++ număr = 11 --număr = 10! flag = False
Operatorii de creștere (++)
și descreștere (--)
pot fi folosiți ca prefix și postfix. Dacă este utilizată ca prefix, modificarea valorii variabilei este văzută pe aceeași linie și, dacă este utilizată ca postfix, schimbarea valorii variabilei este văzută pe următoarea linie. Acest lucru va fi clar prin exemplul de mai jos.
Exemplul 6: Operatori de post și preincrement în 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)); ) ) )
Când rulăm programul, ieșirea va fi:
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;
Operatorul ternar funcționează după cum urmează:
- Dacă expresia menționată de Condition este
true
, rezultatul Expression1 este atribuit variabilei. - Dacă este
false
, rezultatul Expression2 este atribuit variabilei.
Exemplul 7: Operator ternar
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); ) ) )
Când rulăm programul, ieșirea va fi:
10 este număr par
Pentru a afla mai multe, vizitați operatorul ternar C #.
7. Operatori Bitwise și Bit Shift
Operatorii bit și bit shift sunt utilizați pentru a efectua operații de manipulare a bitului.
Operatori C # Bitwise și Bit ShiftOperator | Numele operatorului |
---|---|
~ | Complement bitwise |
& | Bitwise ȘI |
| | OR bit |
^ | SAU exclusiv bit |
<< | Shift stânga bit |
>> | Shift în dreapta bit |
Exemplul 8: Operator Bit și 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); ) ) )
Când rulăm programul, ieșirea va fi:
~ 10 = -11 10 & 20 = 0 10 | 20 = 30 10 20 = 30 10 <> 2 = 2
Pentru a afla mai multe, vizitați operatorul C # Bitwise și Bit Shift.
8. Operatori de atribuire compusă
C # Operatori de atribuire a compusuluiOperator | Numele operatorului | Exemplu | Echivalentă cu |
---|---|---|---|
+ = | Adăugare atribuire | x += 5 | x = x + 5 |
- = | Atribuire de scădere | x -= 5 | x = x - 5 |
* = | Alocarea multiplicării | x *= 5 | x = x * 5 |
/ = | Alocarea diviziei | x /= 5 | x = x / 5 |
% = | Modulo Assignment | x %= 5 | x = x % 5 |
& = | Bitwise AND Assignment | x &= 5 | x = x & 5 |
| = | Bitwise SAU Alocare | x |= 5 | x = x | 5 |
= | Alocare Bitwise XOR | x ^= 5 | x = x 5 |
<< = | Atribuire schimbare stânga | x <<= 5 | x = x << 5 |
>> = | Atribuire schimbare dreapta | x>>= 5 | x = x>> 5 |
=> | Operator Lambda | x => x*x | Returns x*x |
Exemplul 9: Operator de atribuire a compusului
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); ) ) )
Când rulăm programul, ieșirea va fi:
15 12 24 8 2 2 14 2 8 1
Vom discuta despre operatorii Lambda într-un tutorial ulterior.