Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Sentencia Switch-Case | Tipos Básicos y Operaciones
Fundamentos de Java
course content

Contenido del Curso

Fundamentos de Java

Fundamentos de Java

1. Primeros Pasos
2. Tipos Básicos y Operaciones
3. Bucles
4. Arreglos
5. String

book
Sentencia Switch-Case

Manejo de múltiples condiciones diferentes

Cuando tenemos muchas condiciones que verificar, usar múltiples cadenas de if-else puede no ser conveniente.

Por ejemplo:

java

Main

copy
12345678910111213141516171819
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `if` statement int a = 30; if (a == 10) { System.out.println(10); } else if (a == 20) { System.out.println(20); } else if (a == 30) { System.out.println(30); } else if (a == 40) { System.out.println(40); } else { System.out.println(a); } } }

Podemos ver que esto no parece limpio ni profesional. Para estos casos, Java proporciona la sentencia switch-case.

Sentencia switch-case

La sentencia switch-case consta de varias partes:

java

Main

copy
123456789
switch (expression) { case value_1: // Code to be executed if expression matches `value_1` break; // Break is used to exit the `switch` statement. case value_2: // Code to be executed if expression matches `value_2` break; // Break is used to exit the `switch` statement. ............ default: // Code to be executed if no cases match // Optional, but executed if no other case matches }

En el código anterior, se puede observar que utilizamos bloques switch para ejecutar operaciones de manera selectiva. Dependemos de la expresión, que es ligeramente diferente de una condición. Allí, insertamos un valor o una expresión. Por ejemplo, 10 / 2. En este caso, se ejecutará el bloque case con la firma case 5 porque la expresión anterior es igual a 5.

También podemos utilizar una condición aquí. En ese caso, debemos escribir una expresión booleana en el bloque de expresión, y debería verse de la siguiente manera: 10 / 2 == 5. Luego, escriba dos casos a continuación:

java

Pero esta estructura será casi indistinguible de un if-else regular.

La palabra clave "break"

Utilizamos esta palabra clave para terminar la ejecución de una sentencia switch-case y salir de su cuerpo. Esta palabra se utiliza frecuentemente en bucles, los cuales se abordarán en los siguientes capítulos. Utilice esta palabra clave cuando sea necesario salir de un bloque de código y detener su ejecución.

Ahora mejoremos el código que escribimos anteriormente utilizando la sentencia switch-case:

java

Main

copy
123456789101112131415161718192021222324
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `switch` statement int a = 30; switch (a) { case 10: System.out.println(10); break; case 20: System.out.println(20); break; case 30: System.out.println(30); break; case 40: System.out.println(40); break; default: System.out.println("There is no matching value"); } } }

Podemos observar cómo el código se ha vuelto mucho más limpio y fácil de leer y ampliar. No es necesario escribir otra sentencia if desde cero si necesitamos agregar condiciones adicionales. En su lugar, simplemente se añade otro bloque case a nuestra switch-case statement.

Veamos el esquema del bloque switch-case:

Como podemos observar, puede haber tantos casos como deseemos. Cada caso requiere su propia condición y código, que se ejecutará cuando el programa ingrese al bloque del caso. Es recomendable utilizar la palabra clave break porque el programa no saldrá del bloque switch hasta que se hayan ejecutado todos los bloques case. El bloque default se ejecutará si no se ingresa a ninguno de los bloques case o no se utiliza la palabra clave break.

Veamos otro ejemplo sin palabras clave break:

java

Main

copy
1234567891011121314151617181920
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `switch` statement int a = 10; switch (a) { case 10: System.out.println(10); case 20: System.out.println(20); case 30: System.out.println(30); case 40: System.out.println(40); default: System.out.println("There is no matching value"); } } }

Hemos recibido múltiples valores, que difieren de lo que esperábamos. Además, obtuvimos información de los bloques case 10 y default. Precisamente por esto utilizamos la palabra clave break después de cada bloque. De esta manera, el programa saldrá de la sentencia switch y continuará su ejecución.

1. ¿Qué se mostrará en la consola?

2. ¿Por qué necesitamos la palabra clave break?

question mark

¿Qué se mostrará en la consola?

Select the correct answer

question mark

¿Por qué necesitamos la palabra clave break?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 6

Pregunte a AI

expand
ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

course content

Contenido del Curso

Fundamentos de Java

Fundamentos de Java

1. Primeros Pasos
2. Tipos Básicos y Operaciones
3. Bucles
4. Arreglos
5. String

book
Sentencia Switch-Case

Manejo de múltiples condiciones diferentes

Cuando tenemos muchas condiciones que verificar, usar múltiples cadenas de if-else puede no ser conveniente.

Por ejemplo:

java

Main

copy
12345678910111213141516171819
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `if` statement int a = 30; if (a == 10) { System.out.println(10); } else if (a == 20) { System.out.println(20); } else if (a == 30) { System.out.println(30); } else if (a == 40) { System.out.println(40); } else { System.out.println(a); } } }

Podemos ver que esto no parece limpio ni profesional. Para estos casos, Java proporciona la sentencia switch-case.

Sentencia switch-case

La sentencia switch-case consta de varias partes:

java

Main

copy
123456789
switch (expression) { case value_1: // Code to be executed if expression matches `value_1` break; // Break is used to exit the `switch` statement. case value_2: // Code to be executed if expression matches `value_2` break; // Break is used to exit the `switch` statement. ............ default: // Code to be executed if no cases match // Optional, but executed if no other case matches }

En el código anterior, se puede observar que utilizamos bloques switch para ejecutar operaciones de manera selectiva. Dependemos de la expresión, que es ligeramente diferente de una condición. Allí, insertamos un valor o una expresión. Por ejemplo, 10 / 2. En este caso, se ejecutará el bloque case con la firma case 5 porque la expresión anterior es igual a 5.

También podemos utilizar una condición aquí. En ese caso, debemos escribir una expresión booleana en el bloque de expresión, y debería verse de la siguiente manera: 10 / 2 == 5. Luego, escriba dos casos a continuación:

java

Pero esta estructura será casi indistinguible de un if-else regular.

La palabra clave "break"

Utilizamos esta palabra clave para terminar la ejecución de una sentencia switch-case y salir de su cuerpo. Esta palabra se utiliza frecuentemente en bucles, los cuales se abordarán en los siguientes capítulos. Utilice esta palabra clave cuando sea necesario salir de un bloque de código y detener su ejecución.

Ahora mejoremos el código que escribimos anteriormente utilizando la sentencia switch-case:

java

Main

copy
123456789101112131415161718192021222324
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `switch` statement int a = 30; switch (a) { case 10: System.out.println(10); break; case 20: System.out.println(20); break; case 30: System.out.println(30); break; case 40: System.out.println(40); break; default: System.out.println("There is no matching value"); } } }

Podemos observar cómo el código se ha vuelto mucho más limpio y fácil de leer y ampliar. No es necesario escribir otra sentencia if desde cero si necesitamos agregar condiciones adicionales. En su lugar, simplemente se añade otro bloque case a nuestra switch-case statement.

Veamos el esquema del bloque switch-case:

Como podemos observar, puede haber tantos casos como deseemos. Cada caso requiere su propia condición y código, que se ejecutará cuando el programa ingrese al bloque del caso. Es recomendable utilizar la palabra clave break porque el programa no saldrá del bloque switch hasta que se hayan ejecutado todos los bloques case. El bloque default se ejecutará si no se ingresa a ninguno de los bloques case o no se utiliza la palabra clave break.

Veamos otro ejemplo sin palabras clave break:

java

Main

copy
1234567891011121314151617181920
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `switch` statement int a = 10; switch (a) { case 10: System.out.println(10); case 20: System.out.println(20); case 30: System.out.println(30); case 40: System.out.println(40); default: System.out.println("There is no matching value"); } } }

Hemos recibido múltiples valores, que difieren de lo que esperábamos. Además, obtuvimos información de los bloques case 10 y default. Precisamente por esto utilizamos la palabra clave break después de cada bloque. De esta manera, el programa saldrá de la sentencia switch y continuará su ejecución.

1. ¿Qué se mostrará en la consola?

2. ¿Por qué necesitamos la palabra clave break?

question mark

¿Qué se mostrará en la consola?

Select the correct answer

question mark

¿Por qué necesitamos la palabra clave break?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 6
Lamentamos que algo salió mal. ¿Qué pasó?
some-alt