Tecnología

Inicio

¿Cuándo utilizar una instrucción If-Then-Else Más de una declaración de caso?

¿Cuándo utilizar una instrucción If-Then-Else Más de una declaración de caso?


Cuando los programadores crear aplicaciones de computación, a menudo se implementan estructuras complejas en su código. Por ejemplo, en lugar de ejecutar secuencialmente cada línea, un programa a menudo implica la repetición y pruebas condicionales que determinan qué instrucciones de código realmente ejecutan. declaraciones de casos, también conocidos como estados de conmutación, llevar a cabo secuencias de pruebas condicionales. Encadenado y si else también hacer esto, así que los programadores a menudo tienen que elegir entre los dos tipos de declaraciones.

diferencias

Si las cadenas y demás veces pueden llevar a cabo exactamente la misma tarea que un caso o un conmutador, comunicado. Sin embargo, algunas tareas sólo pueden llevarse a cabo por uno de ellos. Encadenado y si else proporcionan una serie de pruebas para el programa a ejecutar, como en el siguiente ejemplo de código Java:

si (== num 1) System.out.println ( "uno");
else if (num == 2) System.out.println ( "dos");
else if (num == 3) System.out.println ( "tres");
otra cosa System.out.println ( "no uno, dos o tres");

El siguiente código representa el procesamiento equivalente con una sentencia switch:

interruptor (num) {
Caso 1: System.out.println ( "uno"); descanso;
Caso 2: System.out.println ( "dos"); descanso;
Caso 3: System.out.println ( "tres"); descanso;
default: System.out.println ( "no uno, dos o tres"); descanso;
}

Los resultados de estos bloques de código son la misma, aunque su implementación es diferente.

Las pruebas

Caso, o el interruptor, declaraciones sólo pueden implicar ciertos tipos de datos. Por ejemplo, en Java, sentencias switch sólo pueden trabajar en los tipos primitivos o enumerados, así como las clases de contenedor para los tipos de números. Si y demás estados pueden llevar a cabo pruebas en cualquier tipo de datos, incluyendo objetos. Las pruebas en las instrucciones switch implican solamente un único valor, mientras que en si, y else, código puede comprobar valores dentro de un cierto rango, o por combinaciones de condiciones con los operadores lógicos - y, o, no. Esto significa que si y else ofrecen más opciones en términos de pruebas condicionales.

cadenas

En lugar de ser simplemente una cuestión de elegir una estructura de control que implementa el procesamiento requerida, los programadores a menudo eligen estructuras basadas en la lectura. Muchos programadores encuentran declaraciones de caso más concisa y fácil de leer cuando los valores simples están siendo probados. Una larga lista de if y else pueden aparecer innecesariamente prolijo dentro de un script. La legibilidad es un factor importante en la programación, para el desarrollo futuro y para proyectos con más de un desarrollador que trabaja en ellos.

descansos

En una cadena de if y else, normalmente no hay necesidad de salir de una estructura de forma explícita. Con el caso, o el interruptor, declaraciones Sin embargo, es necesario el uso de una sentencia break, instruyendo al programa para salir del bloque de código cuando se encuentra el caso a juego. Si no se incluyen las sentencias break, una sentencia switch puede, por tanto, llevar a cabo pruebas innecesarias. Los programadores también a veces se olvidan de incluir la declaración de caso por defecto, lo que puede conducir a un comportamiento impredecible.