logo

C# | Operadors

Els operadors són la base de qualsevol llenguatge de programació. Així la funcionalitat de C# El llenguatge està incomplet sense l'ús d'operadors. Els operadors ens permeten realitzar diferents tipus d'operacions operands . En C# , operadors Es poden classificar sobre la base de els seus diferents funcionalitat :

En C#, els operadors també es poden categoritzar basat en el nombre d'operands:

  • Operador unari: Operador que pren un operand per realitzar l'operació.
  • Operador binari: Operador que pren dos operands per realitzar l'operació.
  • Operador ternari: Operador que pren tres operands per realitzar l'operació.

Operadors aritmètics



S'utilitzen per realitzar operacions aritmètiques/matemàtiques sobre operands. El Operadors binaris entren en aquesta categoria:

  • Addició: El ‘+’ L'operador afegeix dos operands. Per exemple, x+y .
  • Resta: El ‘-‘ L'operador resta dos operands. Per exemple, x-y .
  • Multiplicació: El ‘*’ operador multiplica dos operands. Per exemple, x*y .
  • Divisió: El ‘/’ L'operador divideix el primer operand pel segon. Per exemple, x/y .
  • Mòdul: El '%' L'operador retorna la resta quan el primer operand es divideix pel segon. Per exemple, x%y .

Exemple:

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

Sortida:

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

Els que entren en la categoria de Operadors unaris són:

  • Increment: El ‘++’ L'operador s'utilitza per incrementar el valor d'un nombre enter. Quan es col·loca abans del nom de la variable (també anomenat preincrement operador), el seu valor s'incrementa a l'instant. Per exemple, ++x .
    I quan es col·loca després del nom de la variable (també anomenat operador post-increment ), el seu valor es conserva temporalment fins a l'execució d'aquesta instrucció i s'actualitza abans de l'execució de la següent instrucció. Per exemple, x++ .
  • Decrement: El ‘- -’ L'operador s'utilitza per disminuir el valor d'un nombre enter. Quan es col·loca abans del nom de la variable (també anomenat operador de pre-disminució ), el seu valor es redueix a l'instant. Per exemple, – -x .
    I quan es col·loca després del nom de la variable (també anomenat operador post-decrement ), el seu valor es conserva temporalment fins a l'execució d'aquesta instrucció i s'actualitza abans de l'execució de la següent instrucció. Per exemple, x-- .

Exemple:

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

Sortida:

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>

Operadors relacionals

Els operadors relacionals s'utilitzen per comparar dos valors. Vegem-los un per un:

  • '=='(Igual a) L'operador comprova si els dos operands donats són iguals o no. Si és així, torna veritat. En cas contrari, torna fals. Per exemple, 5==5 tornarà veritat.
  • '!='(No és igual a) L'operador comprova si els dos operands donats són iguals o no. Si no, torna veritat. En cas contrari, torna fals. És el complement booleà exacte de la ‘==’ operador. Per exemple, 5!=5 tornarà fals.
  • '>' (Més gran que) L'operador comprova si el primer operand és més gran que el segon. Si és així, torna veritat. En cas contrari, torna fals. Per exemple, 6>5 tornarà veritat.
  • '<' (Menys de) L'operador comprova si el primer operand és menor que el segon. Si és així, torna veritat. En cas contrari, torna fals. Per exemple, 6<5 tornarà fals.
  • '>='(Més gran que igual a) L'operador comprova si el primer operand és major o igual que el segon operand. Si és així, torna veritat. En cas contrari, torna fals. Per exemple, 5>=5 tornarà veritat.
  • '<='(Menys que igual a) L'operador comprova si el primer operand és menor o igual que el segon operand. Si és així, torna veritat. En cas contrari, torna fals. Per exemple, 5<=5 també tornarà veritat.

Exemple:

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('Més gran que l'operador: ' + resultat);    // Resultat inferior al de l'operador = (x< y);  Console.WriteLine('Less than Operator: ' + result);    // Greater than Equal to Operator  result = (x>= y);  Console.WriteLine('Més gran o igual a: '+ resultat);    // Menys que igual al resultat de l'operador = (x<= y);  Console.WriteLine('Lesser than or Equal to: '+ result);    // Not Equal To Operator  result = (x != y);  Console.WriteLine('Not Equal to Operator: ' + result);  } } }>

Sortida:

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>

Operadors lògics

S'utilitzen per combinar dues o més condicions/restriccions o per complementar l'avaluació de la condició original en consideració. Es descriuen a continuació:

  • I lògic: El ‘&&’ L'operador retorna true quan es compleixen les dues condicions considerades. En cas contrari, torna fals. Per exemple, a && b retorna cert quan tant a com b són certs (és a dir, diferents de zero).
  • O lògic: El ‘||’ L'operador retorna true quan es compleix una (o totes dues) de les condicions considerades. En cas contrari, torna fals. Per exemple, a || b retorna cert si un d'a o b és cert (és a dir, diferent de zero). Per descomptat, retorna cert quan tant a com b són certs.
  • Lògic NO: El ‘!’ L'operador retorna cert que la condició considerada no es compleix. En cas contrari, torna fals. Per exemple, !a retorna cert si a és fals, és a dir, quan a=0.

Exemple:

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

Sortida:

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

Operadors per bits

En C#, hi ha 6 operadors bit a bit que funcionen a nivell de bit o s'utilitzen per realitzar operacions bit a bit. A continuació es mostren els operadors per bits:

  • & (per bits AND) Pren dos nombres com a operands i fa AND en cada bit de dos nombres. El resultat de AND és 1 només si els dos bits són 1.
  • | (o bit a bit) Pren dos nombres com a operands i fa OR a cada bit de dos nombres. El resultat de OR és 1, qualsevol dels dos bits és 1.
  • ^ (XOR bit a bit) Pren dos nombres com a operands i fa XOR en cada bit de dos nombres. El resultat de XOR és 1 si els dos bits són diferents.
  • ~ (complement bit a bit) Pren un número com a operand i inverteix cada bit d'1 a 0 i de 0 a 1.
  • << (canvi a l'esquerra) Pren dos números, desplaça a l'esquerra els bits del primer operand, el segon operand decideix el nombre de llocs a desplaçar.
  • >> (canvi a la dreta) Pren dos nombres, la dreta desplaça els bits del primer operand, el segon operand decideix el nombre de llocs a desplaçar.

Exemple:

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  } }>

Sortida:

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

Operadors d'assignació

Els operadors d'assignació s'utilitzen per assignar un valor a una variable. L'operand de l'esquerra de l'operador d'assignació és una variable i l'operand de la dreta de l'operador d'assignació és un valor. El valor del costat dret ha de ser del mateix tipus de dades de la variable del costat esquerre, en cas contrari el compilador generarà un error.

A continuació es mostren diferents tipus d'operadors d'assignació:

  • =(Tasca senzilla) : Aquest és l'operador d'assignació més senzill. Aquest operador s'utilitza per assignar el valor de la dreta a la variable de l'esquerra.
    Exemple:
a = 10; b = 20; ch = 'y';>
  • +=(Afegeix una tasca) : Aquest operador és una combinació d'operadors '+' i '='. Aquest operador primer afegeix el valor actual de la variable de l'esquerra al valor de la dreta i després assigna el resultat a la variable de l'esquerra.
    Exemple:
(a += b) can be written as (a = a + b)>

Si el valor inicialment emmagatzemat en a és 5. Aleshores (a += 6) = 11.

  • -=(Resta tasca) : Aquest operador és una combinació d'operadors '-' i '='. Aquest operador resta primer el valor actual de la variable de l'esquerra del valor de la dreta i després assigna el resultat a la variable de l'esquerra.
    Exemple:
(a -= b) can be written as (a = a - b)>

Si el valor inicialment emmagatzemat en a és 8. Aleshores (a -= 6) = 2.

  • *=(Multiplicar la tasca) : Aquest operador és una combinació d'operadors '*' i '='. Aquest operador primer multiplica el valor actual de la variable de l'esquerra pel valor de la dreta i després assigna el resultat a la variable de l'esquerra.
    Exemple:
(a *= b) can be written as (a = a * b)>

Si el valor inicialment emmagatzemat en a és 5. Aleshores (a *= 6) = 30.

  • /=(Tasca de divisió): Aquest operador és una combinació d'operadors '/' i '='. Aquest operador primer divideix el valor actual de la variable de l'esquerra pel valor de la dreta i després assigna el resultat a la variable de l'esquerra.
    Exemple:
(a /= b) can be written as (a = a / b)>

Si el valor inicialment emmagatzemat en a és 6. Aleshores (a /= 2) = 3.

  • %=(Assignació de mòduls): Aquest operador és una combinació d'operadors '%' i '='. Aquest operador primer mòdul el valor actual de la variable de l'esquerra pel valor de la dreta i després assigna el resultat a la variable de l'esquerra.
    Exemple:
(a %= b) can be written as (a = a % b)>

Si el valor inicialment emmagatzemat en a és 6. Aleshores (a %= 2) = 0.

  • <<=(Assignació de torn a l'esquerra) : Aquest operador és una combinació d'operadors '<<' i '='. Aquest operador primer Esquerra desplaça el valor actual de la variable de l'esquerra pel valor de la dreta i després assigna el resultat a la variable de l'esquerra.
    Exemple:
(a <<= 2) can be written as (a = a << 2)>

Si el valor inicialment emmagatzemat en a és 6. Aleshores (a <<= 2) = 24.

què és un personatge especial
  • >>=(Assignació de canvi a la dreta) : Aquest operador és una combinació d'operadors '>>' i '='. Aquest operador primer desplaça a la dreta el valor actual de la variable de l'esquerra pel valor de la dreta i després assigna el resultat a la variable de l'esquerra.
    Exemple:
(a>>= 2) es pot escriure com (a = a>> 2)>

Si el valor inicialment emmagatzemat en a és 6. Aleshores (a>>= 2) = 1.

  • &=(Assignació AND bit a bit) : Aquest operador és una combinació d'operadors '&' i '='. Aquest operador primer bit a bit I el valor actual de la variable de l'esquerra pel valor de la dreta i després assigna el resultat a la variable de l'esquerra.
    Exemple:
(a &= 2) can be written as (a = a & 2)>

Si el valor inicialment emmagatzemat en a és 6. Aleshores (a &= 2) = 2.

  • ^=(O exclusiu per bits) : Aquest operador és una combinació d'operadors '^' i '='. Aquest operador primer Exclusiu per bits O el valor actual de la variable de l'esquerra pel valor de la dreta i després assigna el resultat a la variable de l'esquerra.
    Exemple:
(a ^= 2) can be written as (a = a ^ 2)>

Si el valor inicialment emmagatzemat en a és 6. Aleshores (a ^= 2) = 4.

  • |=(O inclòs per bits) : Aquest operador és una combinació d'operadors '|' i '='. Aquest operador primer bit a bit inclòs O el valor actual de la variable de l'esquerra pel valor de la dreta i després assigna el resultat a la variable de l'esquerra.
    Exemple:
(a |= 2) can be written as (a = a | 2)>

Si inicialment, el valor emmagatzemat en a és 6. Aleshores (a |= 2) = 6.

Exemple:

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

Sortida:

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>

Operador condicional

És un operador ternari que és una versió abreujada de la declaració if-else. Té tres operands i d'aquí el nom ternari. Retornarà un dels dos valors en funció del valor d'una expressió booleana.

Sintaxi:

condition ? first_expression : second_expression;>

Explicació:
condició: s'ha d'avaluar com a vertader o fals.
Si la condició és certa
first_expression s'avalua i es converteix en el resultat.
Si la condició és falsa,
segona_expressió s'avalua i es converteix en el resultat.

Exemple:

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>i? x : y;     // Per mostrar el resultat Console.WriteLine('Result: ' + resultat);    // Per trobar quin valor és més gran // Utilitzant l'operador condicional resultat = x< y ? x : y;     // To display the result  Console.WriteLine('Result: ' + result);  } } }>

Sortida:

Result: 10 Result: 5>