- De asignación. =
- Aritméticos. + – * / % (resto de la división entera)
- Binarios: & (Y binario) | (O binario) ^ (O exclusivo) ˜ (negación)
- Comparación: == (igual) != (distinto) < (menor) > (mayor) <= (menor o igual) >= (mayor o igual) is (compara el tipo de variable con el tipo dado.
if (edad is int) { ...}
- Concatenación. Podemos concatenar con el símbolo +, o mejor con StringBuilder que realiza la operación más rápida.
string cadena = "123"; Console.writeLine (cadena + 456); // Visualizará 123456
long duracion string liebre; string tortuga=""; dateTime principio, fin; principio = DateTime.Now; for (int i = 0; i <= 100000; i++) { tortuga = tortuga + " " + i; } fin = DateTime.Now; duracion = new TimeSpan(fin.Ticks - principio.Ticks).Seconds; Console.WriteLine("duración para la tortuga: " + duracion +"s"); principio = DateTime.Now; StringBuilder sb = new StringBuilder(); for (int i = 0; i <= 100000; i++) { sb.Append(" "); sb.Append(i);} liebre = sb.ToString(); fin = DateTime.Now; duracion = new TimeSpan(fin.Ticks - principio.Ticks).Seconds; Console.WriteLine("duración para la liebre: " + duracion +"s"); if (liebre.Equals(tortuga)) { Console.WriteLine("las dos cadenas son idénticas");
- Lógicos
Operador Operación Ejemplo Resultado & Y lógico If (test1)&(test2) Cierto si ambos son ciertos | O lógico If (test1) | (test2) Cierto si alguno de los dos es cierto ^ O exclusivo If (test1)^(test2) Cierto si alguno es cierto y el otro NO lo es ! Negación If ! test Invierte el resultado de test && Y lógico If (test1)&&(test2) Igual que &, pero solo evalua test2 si test1 es cierto || O lógico If (test1)||(test2) Igual que |, pero solo evalua test2 si test1 es falso
Orden de evaluación
- Operaciones aritméticas
- Negación
- Multiplicación y división
- Módulo
- Suma y resta, o concatenación de cadenas
- Operaciones de comparación
- Operadores lógicos
Si se necesitara un orden de evaluación diferente hay que trabajar con paréntesis.