C # operateri: aritmetički, usporedbeni, logički i još mnogo toga.

U ovom ćemo članku naučiti sve o različitim vrstama operatora u programskom jeziku C # i kako ih koristiti.

Operatori su simboli koji se koriste za izvođenje operacija nad operandima. Operandi mogu biti varijable i / ili konstante.

Na primjer , u 2+3, +je operator koji se koristi za izvršavanje operacije zbrajanja, dok su 2i 3operandi.

Operatori se koriste za manipulaciju varijablama i vrijednostima u programu. C # podržava brojne operatore koji su klasificirani na temelju vrste operacija koje izvode.

1. Osnovni operator dodjele

Osnovni operator dodjele (=) koristi se za dodjeljivanje vrijednosti varijablama. Na primjer,

dvostruki x; x = 50,05;

Ovdje je x dodijeljeno 50,05.

Primjer 1: Osnovni operator dodjele

 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); ) ) ) 

Kada pokrenemo program, izlaz će biti:

 Prvi broj = 10 Drugi broj = 10

Ovo je jednostavan primjer koji pokazuje upotrebu operatora dodjele.

Možda ste primijetili upotrebu kovrčavih zagrada ( )u primjeru. O njima ćemo razgovarati u oblikovanju nizova. Za sada samo imajte na umu da (0)je zamijenjena prvom varijablom koja slijedi niz, (1)zamijenjena je drugom varijablom i tako dalje.

2. Aritmetički operatori

Aritmetički operatori koriste se za izvođenje aritmetičkih operacija kao što su zbrajanje, oduzimanje, množenje, dijeljenje itd.

Na primjer,

int x = 5; int y = 10; int z = x + y; // z = 15
C # Aritmetički operatori
Operater Ime operatora Primjer
+ Operater zbrajanja 6 + 3 ocjenjuje na 9
- Operator oduzimanja 10 - 6 ocjenjuje na 4
* Operator množenja 4 * 2 ocjenjuje na 8
/ Divizion 10/5 ocjenjuje na 2
% Modulo Operator (ostatak) 16% 3 ocjenjuje na 1

Primjer 2: Aritmetički operatori

 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); ) ) ) 

Kada pokrenemo program, izlaz će biti:

 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čke operacije izvode se u gornjem primjeru. Varijable se u naredbama mogu zamijeniti konstantama. Na primjer,

rezultat = 4,5 + 2,7; // rezultat će sadržavati 7,2 rezultat = prvi broj - 3,2; // rezultat će se održati 11.2

3. Relacijski operateri

Relacijski operatori koriste se za provjeru odnosa između dva operanda. Ako je veza istinita, rezultat će biti true, inače će rezultirati false.

Relacijski operatori koriste se u donošenju odluka i petljama.

C # relacijski operateri
Operater Ime operatora Primjer
== Jednak 6 == 4 ocjenjuje na false
> Veći od 3> -1 procjenjuje na točno
< Manje od 5 <3 ocjenjuje na lažno
> = Veći od ili jednak 4> = 4 procjenjuje na točno
<= Manje ili jednako 5 <= 3 ocjenjuje na lažno
! = Nije jednako 10! = 2 ocjenjuje istinitim

Primjer 3: Relacijski operateri

 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); ) ) ) 

Kada pokrenemo program, izlaz će biti:

 10 == 20 vraća False 10> 20 vraća False 10 = 20 vraća False 10 <= 20 vraća True 10! = 20 vraća True

4. Logički operatori

Logički operatori se koriste za obavljanje logičku operaciju kao što su and, or. Logički operatori operiraju logičke izraze ( truei false) i vraćaju logičke vrijednosti. Logički operatori koriste se u donošenju odluka i petljama.

Evo kako se rezultat ocjenjuje za logičke ANDi ORoperatore.

C # Logički operatori
Operand 1 Operand 2 ILI (||) I (&&)
pravi pravi pravi pravi
pravi lažno pravi lažno
lažno pravi pravi lažno
lažno lažno lažno lažno

Jednostavnim riječima, tablica se može sažeti kao:

  • Ako je jedan od operanda istinit, ORoperator će ga procijeniti na true.
  • Ako je jedan od operanda netačan, ANDoperator će to procijeniti false.

Primjer 4: Logički operatori

 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); ) ) ) 

Kada pokrenemo program, izlaz će biti:

 Točno netočno

5. Unarni operateri

Za razliku od ostalih operatora, unarni operatori rade na jednom operandu.

C # unarni operatori
Operater Ime operatora Opis
+ Unary Plus Ostavlja znak operanda kakav jest
- Unary Minus Obrne znak operanda
++ Prirast Povećaj vrijednost za 1
- Dekrement Umanji vrijednost za 1
! Logična negacija (nije) Obrne vrijednost logičke vrijednosti

Primjer 5: Unarni operatori

 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)); ) ) ) 

Kada pokrenemo program, izlaz će biti:

 + broj = 10 -broj = -10 ++ broj = 11 --broj = 10! zastava = Netačno

Operatori prirasta (++)i smanjenja (--)mogu se koristiti kao prefiks i postfiks. Ako se koristi kao prefiks, promjena vrijednosti varijable vidi se u istom retku, a ako se koristi kao postfix, promjena vrijednosti varijable vidi se u sljedećem retku. To će biti jasno iz primjera u nastavku.

Primjer 6: Operatori za post i inkrement u 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)); ) ) ) 

Kada pokrenemo program, izlaz će biti:

 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 operator radi na sljedeći način:

  • Ako je izraz naveden u Uvjetu true, rezultat Izraz1 dodijeljen je varijabli.
  • Ako jest false, rezultat Expression2 dodjeljuje se varijabli.

Primjer 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); ) ) ) 

Kada pokrenemo program, izlaz će biti:

 10 je parni broj

Da biste saznali više, posjetite C # ternarni operater.

7. Operateri bitovnog i bitnog pomaka

Operatori bit-a i pomaka bita koriste se za izvođenje operacija manipulacije bitovima.

C # Bitwise i Bit Shift operateri
Operater Ime operatora
~ Bitni dodatak
& Bitno I
| Bitno ILI
^ Bitno ekskluzivno ILI
<< Pomicanje ulijevo ulijevo
>> Pomicanje udesno udesno

Primjer 8: Bitwise i 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); ) ) ) 

Kada pokrenemo program, izlaz će biti:

~ 10 = -11 10 & 20 = 0 10 | 20 = 30 10 20 = 30 10 <> 2 = 2

Da biste saznali više, posjetite C # Bitwise i Bit Shift operator.

8. Složeni operateri dodjele

C # Složeni operateri dodjele
Operater Ime operatora Primjer Ekvivalentno
+ = Dodjela dodjela x += 5 x = x + 5
- = Dodjeljivanje oduzimanja x -= 5 x = x - 5
* = Zadatak množenja x *= 5 x = x * 5
/ = Dodjela divizije x /= 5 x = x / 5
% = Zadatak po modulu x %= 5 x = x % 5
& = Bit-bit i dodjela x &= 5 x = x & 5
| = Bitno ILI dodjeljivanje x |= 5 x = x | 5
= Dodjeljivanje XOR-a u bitovima x ^= 5 x = x 5
<< = Dodjela lijevog pomaka x <<= 5 x = x << 5
>> = Dodjela desnog pomaka x>>= 5 x = x>> 5
=> Lambda operater x => x*x Returns x*x

Primjer 9: Složeni operater dodjele

 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); ) ) ) 

Kada pokrenemo program, izlaz će biti:

 15 12 24 8 2 2 14 2 8 1

O Lambda operatorima razgovarat ćemo u kasnijem vodiču.

Zanimljivi članci...