0Pricing
C# Academy · Lección

Precedencia y asociatividad de operadores

Comprenda el orden de evaluación y utilice paréntesis.

Precedencia y asociatividad de operadores es una lección gratuita de C# Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de C# Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de C# Academy incluye 4 lecciones en total.

Por qué es importante la precedencia

Cuando una expresión combina operadores, C# decide el orden mediante la precedencia. Los operadores con mayor precedencia se agrupan con más fuerza y se ejecutan primero.

using System;

class Program {
    static void Main() {
        Console.WriteLine(2 + 3 * 4);
    }
}

Multiplicativos antes que aditivos

* / % tienen mayor precedencia que + -, por lo que se ejecutan primero, igual que en las matemáticas.

using System;

class Program {
    static void Main() {
        Console.WriteLine(10 - 2 * 3);
        Console.WriteLine(20 / 4 + 1);
    }
}

Los paréntesis anulan el orden

Los paréntesis tienen la precedencia más alta. Úselos para forzar el orden que desee y dejar clara la intención.

using System;

class Program {
    static void Main() {
        Console.WriteLine((2 + 3) * 4);
        Console.WriteLine(2 + (3 * 4));
    }
}

Comparación frente a aritmética

La aritmética se ejecuta antes que la comparación. En a + b > c, la suma se realiza primero y después la comparación.

using System;

class Program {
    static void Main() {
        int a = 3, b = 4, c = 5;
        Console.WriteLine(a + b > c);
    }
}

Orden de los operadores lógicos

&& tiene mayor precedencia que ||. En a || b && c, AND se agrupa primero.

using System;

class Program {
    static void Main() {
        bool r = true || false && false;
        Console.WriteLine(r);
    }
}

Resumen de la precedencia

Orden aproximado, de mayor a menor: paréntesis, unarios (! ~ -), * / %, + -, desplazamientos, comparaciones, igualdad, operadores bit a bit, &&, || y, por último, asignación.

using System;

class Program {
    static void Main() {
        int x = 1 + 2 << 1;
        Console.WriteLine(x);
    }
}

Asociatividad: de izquierda a derecha

Cuando los operadores tienen la misma precedencia, la asociatividad decide la dirección. La mayoría de los operadores binarios son asociativos por la izquierda: 10 - 4 - 2 equivale a (10 - 4) - 2.

using System;

class Program {
    static void Main() {
        Console.WriteLine(10 - 4 - 2);
        Console.WriteLine(100 / 5 / 2);
    }
}

Asignación asociativa por la derecha

La asignación es asociativa por la derecha. a = b = 5 asigna primero 5 a b y después ese resultado a a.

using System;

class Program {
    static void Main() {
        int a, b;
        a = b = 5;
        Console.WriteLine(a + " " + b);
    }
}

Los operadores unarios se agrupan con fuerza

Los operadores unarios !, ~ y la negación se aplican antes que los operadores binarios. -3 + 2 niega primero el 3.

using System;

class Program {
    static void Main() {
        Console.WriteLine(-3 + 2);
        Console.WriteLine(!false && true);
    }
}

El operador condicional

El operador ternario ?: tiene una precedencia baja, justo por encima de la asignación. Ponga entre paréntesis las condiciones complejas para evitar problemas.

using System;

class Program {
    static void Main() {
        int n = 7;
        string s = n % 2 == 0 ? "even" : "odd";
        Console.WriteLine(s);
    }
}

La claridad es mejor que la astucia

Aunque la precedencia haga que los paréntesis sean opcionales, añadirlos suele facilitar la lectura y la revisión del código.

using System;

class Program {
    static void Main() {
        int a = 2, b = 3, c = 4;
        int result = (a * b) + (c * 2);
        Console.WriteLine(result);
    }
}

Comprobación rápida

Compruebe su comprensión de la precedencia y la asociatividad.

Resumen

La precedencia determina qué operadores se ejecutan primero; * y / tienen mayor precedencia que + y -, y los paréntesis tienen precedencia sobre todos. La asociatividad resuelve los empates entre operadores con la misma precedencia: la mayoría se evalúa de izquierda a derecha, mientras que la asignación se evalúa de derecha a izquierda.

En caso de duda, añada paréntesis para mejorar la claridad.

Preguntas frecuentes

¿La lección «Precedencia y asociatividad de operadores» es gratis?

Sí — el texto completo de «Precedencia y asociatividad de operadores» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de C# Academy, actualiza a CoddyKit PRO. El curso de C# Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Precedencia y asociatividad de operadores»?

Comprenda el orden de evaluación y utilice paréntesis. Practicas C# Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar C# Academy?

No se requiere experiencia previa. C# Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «Precedencia y asociatividad de operadores»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de C# Academy?

Sí. Cada lección de C# Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Operadores aritméticos y de asignación
  2. Operadores de comparación y lógicos
  3. Operadores bit a bit y de desplazamiento
  4. Precedencia y asociatividad de operadores
← Volver a C# Academy