viernes, 27 de septiembre de 2024

■ C# Switch

 ■ Estructura del switch

switch(<variable>) {
    case valor_1:
        // instrucciones 
        break;
    case valor_2:
        // instrucciones
        break;
    case valor_3:
        // instrucciones
        break;
    case valor_n:
        // instrucciones
        break;
    case default:
        // instrucciones si no fue ninguno de los anteriores
}


■ Ejemplo

Si la variable que se le pasa al switch es un int.

int valor = 1;

switch (valor) {
    case 1:
        // instrucciones si es 1
        break;
    case 2:
        // instrucciones si es 2
        break;
    case 3:
        // instrucciones si es 3
        break;
    case default:
        // instrucciones si no es ninguna de las anteriores
        break;
}


Si la variable que se le pasa al switch es un string.

string valor = "a";

switch (valor) {
    case "a":
        // instrucciones si es "a"
        break;
    case "b":
        // instrucciones si es "b"
        break;
    case "c":
        // instrucciones si es "c"
        break;
    case default:
        // instrucciones si no es ninguna de las anteriores
        break;
}


■ Comparado con if

El switch es como un if múltiple, pero a diferencia del if que además de evaluar variables y expresiones boleanas como "x > y"; el switch solo evalúa valores exactos, es decir, recibe una variable y si el valor de dicha varíable es igual a alguna de sus opciones (casos) realiza las instrucciones.

Tiene una opción que es "default" que no es obligatorio ponerla, pero cuando se usa ésta se ejecuta si el valor de la variable evaluada no coincide con ninguno de los casos anteriores.

Pero en C# a diferencia de otros lenguajes hay un tipo de switch que si puede evaluar expresiones boleanas, el funcionamiento de este se puede ver aquí.

No hay comentarios:

Publicar un comentario