C# LanguageLos operadores


Introducción

En C #, un operador es un elemento de programa que se aplica a uno o más operandos en una expresión o declaración. Los operadores que toman un operando, como el operador de incremento (++) o nuevo, se denominan operadores unarios. Los operadores que toman dos operandos, como los operadores aritméticos (+, -, *, /), se denominan operadores binarios. Un operador, el operador condicional (? :), toma tres operandos y es el único operador ternario en C #.

Sintaxis

  • Operador público OperandType operador operatorSymbol (OperandType operand1)
  • Operador público OperandType operador operatorSymbol (OperandType operand1, OperandType2 operand2)

Parámetros

Parámetro Detalles
símbolo de operador El operador está sobrecargado, por ejemplo, +, -, /, *
OperandType El tipo que será devuelto por el operador sobrecargado.
operando1 El primer operando que se utilizará en la realización de la operación.
operando2 El segundo operando que se utilizará para realizar la operación, cuando se realizan operaciones binarias.
declaraciones Código opcional necesario para realizar la operación antes de devolver el resultado.

Observaciones

Todos los operadores se definen como static methods y no son virtual y no se heredan.

Precedencia del operador

Todos los operadores tienen una "precedencia" particular según el grupo al que pertenezca el operador (los operadores del mismo grupo tienen la misma prioridad). Lo que significa que algunos operadores se aplicarán antes que otros. Lo que sigue es una lista de grupos (que contienen sus respectivos operadores) ordenados por precedencia (el más alto primero):

  • Operadores primarios

    • ab - Acceso de miembros.
    • a?.b - Acceso de miembro condicional nulo.
    • -> - Desreferenciación de punteros combinada con acceso de miembros.
    • f(x) - Invocación de la función.
    • a[x] - indexador.
    • a?[x] - Indizador condicional nulo.
    • x++ - Incremento de Postfix.
    • x-- - x-- Postfix.
    • new - Tipo de instanciación.
    • default(T) : devuelve el valor inicializado predeterminado de tipo T
    • typeof - Devuelve el objeto Type del operando.
    • checked : habilita la comprobación de desbordamiento numérico.
    • unchecked marcar - Desactiva la comprobación de desbordamiento numérico.
    • delegate : declara y devuelve una instancia de delegado.
    • sizeof : devuelve el tamaño en bytes del operando de tipo.
  • Operadores Unarios

    • +x - Devuelve x .
    • -x - Negación numérica.
    • !x - Negación lógica.
    • ~x - Bitwise complemento / declara destructores.
    • ++x - Incremento de prefijo.
    • --x - --x prefijo.
    • (T)x - Tipo de fundición.
    • await - espera una Task .
    • &x - Devuelve la dirección (puntero) de x .
    • *x - Desreferenciación del puntero.
  • Operadores Multiplicativos

    • x * y - Multiplicación.
    • x / y - División.
    • x % y - Módulo.
  • Operadores Aditivos

    • x + y - Adición.
    • x – y - resta.
  • Operadores de cambio bitwise

    • x << y - Desplazar bits a la izquierda.
    • x >> y - Desplazar bits a la derecha.
  • Operadores relacionales / de prueba de tipo

    • x < y - Menos que.
    • x > y - Mayor que.
    • x <= y - menor o igual que.
    • x >= y - Mayor o igual que.
    • is - Compatibilidad de tipos.
    • as - Tipo de conversión.
  • Operadores de Igualdad

    • x == y - Igualdad.
    • x != y - No es igual.
  • Operador lógico y

    • x & y - Lógica / bit a bit AND.
  • Operador XOR lógico

    • x ^ y - XOR lógico / bit a bit.
  • Operador lógico o

    • x | y - Lógica / bitwise OR.
  • Condicional y operador

    • x && y - Cortocircuito lógico AND.
  • Operador condicional o

    • x || y - Cortocircuito lógico OR.
  • Operador de fusión nula

    • x ?? y - Devuelve x si no es nulo; De lo contrario, devuelve y .
  • Operador condicional

    • x ? y : z - Evalúa / devuelve y si x es verdadero; De lo contrario, evalúa z .

contenido relacionado

Los operadores Ejemplos relacionados