logo

C# | Operaterji

Operatorji so temelj vsakega programskega jezika. Tako je funkcionalnost C# jezik je nepopoln brez uporabe operatorjev. Operaterji nam omogočajo izvajanje različnih vrst operacij operandov . noter C# , operaterje je mogoče kategorizirati na podlagi njihova drugačna funkcionalnost :

V C# lahko operaterje tudi kategoriziramo na podlagi števila operandov:

  • Unarni operater: Operater, ki sprejme eno operand za izvedbo operacije.
  • Binarni operator: Operater, ki sprejme dva operandov za izvedbo operacije.
  • Ternarni operater: Operater, ki sprejme tri operandov za izvedbo operacije.

Aritmetični operatorji



Ti se uporabljajo za izvajanje aritmetičnih/matematičnih operacij na operandih. The Binarni operatorji v to kategorijo spadajo:

  • Dodatek: The '+' operator sešteje dva operanda. na primer x+y .
  • odštevanje: The '-' operator odšteje dva operanda. na primer x-y .
  • Množenje: The '*' operator pomnoži dva operanda. na primer x*y .
  • Oddelek: The '/' deli prvi operand z drugim. na primer x/y .
  • Modul: The '%' vrne ostanek, ko je prvi operand deljen z drugim. na primer x%y .

primer:

C#
// C# program to demonstrate the working  // of Binary Arithmetic Operators using System; namespace Arithmetic {  class GFG  {    // Main Function  static void Main(string[] args)  {    int result;  int x = 10, y = 5;    // Addition  result = (x + y);  Console.WriteLine('Addition Operator: ' + result);    // Subtraction  result = (x - y);  Console.WriteLine('Subtraction Operator: ' + result);    // Multiplication  result = (x * y);  Console.WriteLine('Multiplication Operator: '+ result);    // Division  result = (x / y);  Console.WriteLine('Division Operator: ' + result);    // Modulo  result = (x % y);  Console.WriteLine('Modulo Operator: ' + result);  }  } }>

Izhod:

Addition Operator: 15 Subtraction Operator: 5 Multiplication Operator: 50 Division Operator: 2 Modulo Operator: 0>

Tisti, ki spadajo v kategorijo Unarni operatorji so:

  • Povečanje: The '++' se uporablja za povečanje vrednosti celega števila. Ko je postavljeno pred ime spremenljivke (imenovano tudi predprirastek operator), se njegova vrednost takoj poveča. na primer ++x .
    In ko je postavljeno za imenom spremenljivke (imenovano tudi postinkrementni operater ), se njegova vrednost začasno ohrani do izvedbe tega stavka in se posodobi pred izvedbo naslednjega stavka. na primer x++ .
  • Zmanjšanje: The '- -' se uporablja za zmanjšanje vrednosti celega števila. Ko je postavljeno pred ime spremenljivke (imenovano tudi operater preddekrementa ), se njegova vrednost takoj zmanjša. na primer – -x .
    In ko je postavljeno za imenom spremenljivke (imenovano tudi postdekrementni operater ), se njegova vrednost začasno ohrani do izvedbe tega stavka in se posodobi pred izvedbo naslednjega stavka. na primer x- – .

primer:

C#
// C# program to demonstrate the working  // of Unary Arithmetic Operators using System; namespace Arithmetic {    class GFG {    // Main Function  static void Main(string[] args)  {    int a = 10, res;    // post-increment example:  // res is assigned 10 only,   // a is not updated yet  res = a++;    //a becomes 11 now  Console.WriteLine('a is {0} and res is {1}', a, res);      // post-decrement example:  // res is assigned 11 only, a is not updated yet  res = a--;    //a becomes 10 now  Console.WriteLine('a is {0} and res is {1}', a, res);       // pre-increment example:  // res is assigned 11 now since a  // is updated here itself  res = ++a;    // a and res have same values = 11  Console.WriteLine('a is {0} and res is {1}', a, res);      // pre-decrement example:  // res is assigned 10 only since  // a is updated here itself  res = --a;    // a and res have same values = 10  Console.WriteLine('a is {0} and res is {1}',a, res);       }  } }>

Izhod:

a is 11 and res is 10 a is 10 and res is 11 a is 11 and res is 11 a is 10 and res is 10>

Relacijski operaterji

operacijski sistem linux

Relacijski operatorji se uporabljajo za primerjavo dveh vrednosti. Oglejmo si jih enega za drugim:

  • '==' (Enako) operator preveri, ali sta podana operanda enaka ali ne. Če je tako, vrne true. V nasprotnem primeru vrne false. na primer 5==5 bo vrnil true.
  • '!='(ni enako) operator preveri, ali sta podana operanda enaka ali ne. Če ne, vrne true. V nasprotnem primeru vrne false. Je natančen logični komplement '==' operater. na primer 5!=5 bo vrnil false.
  • '>' (Večji od) operator preveri, ali je prvi operand večji od drugega operanda. Če je tako, vrne true. V nasprotnem primeru vrne false. na primer 6>5 bo vrnil true.
  • '<' (Manj kot) preveri, ali je prvi operand manjši od drugega operanda. Če je tako, vrne true. V nasprotnem primeru vrne false. na primer 6<5 bo vrnil false.
  • '>=' (večje kot enako) preveri, ali je prvi operand večji ali enak drugemu operandu. Če je tako, vrne true. V nasprotnem primeru vrne false. na primer 5>=5 bo vrnil true.
  • '<=' (manj kot enako) preveri, ali je prvi operand manjši ali enak drugemu operandu. Če je tako, vrne true. V nasprotnem primeru vrne false. na primer 5<=5 bo prav tako vrnilo true.

primer:

C#
// C# program to demonstrate the working  // of Relational Operators using System; namespace Relational {   class GFG {    // Main Function  static void Main(string[] args)  {  bool result;  int x = 5, y = 10;    // Equal to Operator  result = (x == y);  Console.WriteLine('Equal to Operator: ' + result);    // Greater than Operator  result = (x>y);  Console.WriteLine('Večji od operaterja: ' + rezultat);    // Manj kot rezultat operatorja = (x< y);  Console.WriteLine('Less than Operator: ' + result);    // Greater than Equal to Operator  result = (x>= y);  Console.WriteLine('Večji od ali enak: '+ rezultat);    // Manj kot enako rezultatu operatorja = (x<= y);  Console.WriteLine('Lesser than or Equal to: '+ result);    // Not Equal To Operator  result = (x != y);  Console.WriteLine('Not Equal to Operator: ' + result);  } } }>

Izhod:

Equal to Operator: False Greater than Operator: False Less than Operator: True Greater than or Equal to: False Lesser than or Equal to: True Not Equal to Operator: True>

Logični operatorji

Uporabljajo se za združevanje dveh ali več pogojev/omejitev ali za dopolnitev ocene prvotnega upoštevanega stanja. Spodaj so opisani:

  • Logični IN: The '&&' operator vrne true, ko sta izpolnjena oba obravnavana pogoja. V nasprotnem primeru vrne false. na primer a && b vrne true, ko sta a in b resnična (tj. različna od nič).
  • Logični ALI: The '||' operator vrne true, ko je izpolnjen eden (ali oba) od obravnavanih pogojev. V nasprotnem primeru vrne false. na primer a || b vrne true, če je eden od a ali b resničen (tj. različen od nič). Seveda vrne true, ko sta oba a in b resnična.
  • Logično NE: The '!' operator vrne true zadevni pogoj ni izpolnjen. V nasprotnem primeru vrne false. na primer !a vrne true, če je a false, tj. ko je a=0.

primer:

C#
// C# program to demonstrate the working  // of Logical Operators using System; namespace Logical {   class GFG {    // Main Function  static void Main(string[] args)   } }>

Izhod:

AND Operator: False OR Operator: True NOT Operator: False>

Bitni operaterji

V C# je 6 bitnih operaterjev, ki delujejo na bitni ravni ali se uporabljajo za izvajanje bitnih operacij. Sledijo bitni operaterji:

  • & (bitni IN) Vzame dve števili kot operanda in naredi IN za vsak bit dveh števil. Rezultat IN je 1 samo, če sta oba bita 1.
  • | (bitno ALI) Vzame dve števili kot operanda in izvede ALI za vsak bit dveh števil. Rezultat ALI je 1, kateri koli od dveh bitov je 1.
  • ^ (bitni XOR) Vzame dve števili kot operanda in izvede XOR za vsak bit dveh števil. Rezultat XOR je 1, če sta bita različna.
  • ~ (bitni komplement) Vzame eno številko kot operand in obrne vsak bit, ki je 1 proti 0 in 0 proti 1.
  • << (levi premik) Vzame dve števili, premakne bite prvega operanda v levo, drugi operand določi število mest za premik.
  • >> (desni premik) Vzame dve števili, desno premakne bite prvega operanda, drugi operand določi število mest za premik.

primer:

C#
// C# program to demonstrate the working  // of Bitwise Operators using System; namespace Bitwise {   class GFG {    // Main Function  static void Main(string[] args)    int x = 5, y = 10, result;    // Bitwise AND Operator  result = x & y;  Console.WriteLine('Bitwise AND: ' + result);    // Bitwise OR Operator  result = x  } }>

Izhod:

Bitwise AND: 0 Bitwise OR: 15 Bitwise XOR: 15 Bitwise Complement: -6 Bitwise Left Shift: 20 Bitwise Right Shift: 1>

Operatorji dodelitve

Operatorji dodeljevanja se uporabljajo za dodeljevanje vrednosti spremenljivki. Levi operand operatorja dodelitve je spremenljivka, desni operand operatorja dodelitve pa vrednost. Vrednost na desni strani mora biti istega podatkovnega tipa kot spremenljivka na levi strani, sicer bo prevajalnik prikazal napako.

Spodaj so prikazane različne vrste operatorjev dodelitve:

  • =(Enostavna dodelitev) : To je najpreprostejši operator dodelitve. Ta operator se uporablja za dodelitev vrednosti na desni spremenljivki na levi.
    primer:
a = 10; b = 20; ch = 'y';>
  • +=(Dodaj nalogo) : Ta operator je kombinacija operatorjev '+' in '='. Ta operator najprej doda trenutno vrednost spremenljivke na levi vrednosti na desni in nato dodeli rezultat spremenljivki na levi.
    primer:
(a += b) can be written as (a = a + b)>

Če je prvotna vrednost, shranjena v a, 5. Potem je (a += 6) = 11.

  • -=(Odštej dodelitev) : Ta operator je kombinacija operatorjev '-' in '='. Ta operator najprej odšteje trenutno vrednost spremenljivke na levi od vrednosti na desni in nato dodeli rezultat spremenljivki na levi.
    primer:
(a -= b) can be written as (a = a - b)>

Če je prvotna vrednost, shranjena v a, 8. Potem je (a -= 6) = 2.

  • *=(pomnožitev) : Ta operator je kombinacija operatorjev '*' in '='. Ta operator najprej pomnoži trenutno vrednost spremenljivke na levi z vrednostjo na desni in nato dodeli rezultat spremenljivki na levi.
    primer:
(a *= b) can be written as (a = a * b)>

Če je prvotna vrednost, shranjena v a, 5. Potem je (a *= 6) = 30.

  • /=(Dodelitev delitve): Ta operator je kombinacija operatorjev '/' in '='. Ta operator najprej deli trenutno vrednost spremenljivke na levi z vrednostjo na desni in nato dodeli rezultat spremenljivki na levi.
    primer:
(a /= b) can be written as (a = a / b)>

Če je prvotna vrednost, shranjena v a, 6. Potem je (a /= 2) = 3.

  • %=(dodelitev modula): Ta operator je kombinacija operatorjev »%« in »=«. Ta operator najprej modulira trenutno vrednost spremenljivke na levi z vrednostjo na desni in nato dodeli rezultat spremenljivki na levi.
    primer:
(a %= b) can be written as (a = a % b)>

Če je prvotna vrednost, shranjena v a, 6. Potem je (a %= 2) = 0.

  • <<=(Dodelitev levega premika) : Ta operator je kombinacija operatorjev '<<' in '='. Ta operator najprej levo premakne trenutno vrednost spremenljivke na levi za vrednost na desni in nato dodeli rezultat spremenljivki na levi.
    primer:
(a <<= 2) can be written as (a = a << 2)>

Če je prvotna vrednost, shranjena v a, 6. Potem je (a <<= 2) = 24.

  • >>=(Dodelitev desnega premika) : Ta operator je kombinacija operatorjev »>>« in »=«. Ta operator najprej desno premakne trenutno vrednost spremenljivke na levi za vrednost na desni in nato dodeli rezultat spremenljivki na levi.
    primer:
(a>>= 2) lahko zapišemo kot (a = a>> 2)>

Če je prvotna vrednost, shranjena v a, 6. Potem je (a>>= 2) = 1.

  • &=(bitno IN dodelitev) : Ta operator je kombinacija operatorjev '&' in '='. Ta operator najprej Bitno IN trenutno vrednost spremenljivke na levi z vrednostjo na desni in nato dodeli rezultat spremenljivki na levi.
    primer:
(a &= 2) can be written as (a = a & 2)>

Če je prvotna vrednost, shranjena v a, 6. Potem je (a &= 2) = 2.

  • ^=(bitni izključni ALI) : Ta operator je kombinacija operatorjev ‘^’ in ‘=’. Ta operator najprej Bitwise Exclusive OR trenutno vrednost spremenljivke na levi za vrednost na desni in nato dodeli rezultat spremenljivki na levi.
    primer:
(a ^= 2) can be written as (a = a ^ 2)>

Če je prvotna vrednost, shranjena v a, 6. Potem je (a ^= 2) = 4.

  • |=(bitni vključujoč ALI) : Ta operator je kombinacija operatorjev ‘|’ in ‘=’. Ta operator najprej Bitwise Inclusive OR trenutno vrednost spremenljivke na levi za vrednost na desni in nato dodeli rezultat spremenljivki na levi.
    Primer:
(a |= 2) can be written as (a = a | 2)>

Če je na začetku vrednost, shranjena v a, 6. Potem je (a |= 2) = 6.

primer:

C#
// C# program to demonstrate the working  // of Assignment Operators using System; namespace Assignment {   class GFG {    // Main Function  static void Main(string[] args)  = 4;   Console.WriteLine('Bitwise Inclusive OR Assignment Operator: ' + x);     } }>

Izhod:

Add Assignment Operator: 25 Subtract Assignment Operator: 15 Multiply Assignment Operator: 75 Division Assignment Operator: 5 Modulo Assignment Operator: 0 Left Shift Assignment Operator: 32 Right Shift Assignment Operator: 2 Bitwise AND Assignment Operator: 4 Bitwise Exclusive OR Assignment Operator: 8 Bitwise Inclusive OR Assignment Operator: 12>

Pogojni operater

To je ternarni operator, ki je skrajšana različica stavka if-else. Ima tri operande in od tod tudi ime ternarni. Vrnil bo eno od dveh vrednosti, odvisno od vrednosti logičnega izraza.

Sintaksa:

condition ? first_expression : second_expression;>

Pojasnilo:
pogoj: mora biti ovrednoten na resnično ali napačno.
Če je pogoj resničen
first_expression je ovrednoten in postane rezultat.
Če je pogoj napačen,
second_expression je ovrednoten in postane rezultat.

primer:

C#
// C# program to demonstrate the working  // of Conditional Operator using System; namespace Conditional {   class GFG {    // Main Function  static void Main(string[] args)  {  int x = 5, y = 10, result;    // To find which value is greater  // Using Conditional Operator  result = x>y? x : y;     // Za prikaz rezultata Console.WriteLine('Rezultat: ' + rezultat);    // Ugotoviti, katera vrednost je večja // Uporaba pogojnega operatorja result = x< y ? x : y;     // To display the result  Console.WriteLine('Result: ' + result);  } } }>

Izhod:

Result: 10 Result: 5>