switch

Este caso es muy similar a las estructuras if - else pero se suele usar cuando hay varias opciones que analizar y se pueda confundir la estructura en las estructuras IF.

En este caso no es necesario parentizar las instruciones pero no es mala opción si lo haces.

Es importante tener en cuenta que, en el momento que se ejecute la primera opción, se ejecutarán las siguientes hasta que aparezca la palabra reservada 'break'

El código de esta estructura es el siguiente:

switch (expresion){
    case valor1:
        instrucciones1;
        break;
    case valor2:
        instrucciones2;
        break;
    ···
    case valorN:
        instruccionesN;
        break;
}

y, lo mejor para entender claramente cómo funciona esta estructura vamos a ver un ejemplo:

class dia_semana {
    public static void main (String argumentos[]) {
        int dia;
            dia=Integer.valueOf(argumentos[0]).intValue();
            switch (dia){
                case 1: System.out.println("Lunes");
                    break;
                case 2: System.out.println("Martes");
                    break;
                case 3: System.out.println("Miercoles");
                    break;
                case 4: System.out.println("Jueves");
                    break;
                case 5: System.out.println("Viernes");
                    break;
                case 6: System.out.println("Sábado");
                    break;
                case 7: System.out.println("Domingo");
                    break;
        }
    }
}

Nota: Para ejecutar este ejemplo debes teclear: java dia_semana num, siendo num el número del día de la semana.

Esta clausula también permite definir valores por defecto que se ejecutarán en el caso de que ninguna de las condiciones se validen. Las estructura es así:

switch (expresion){
    case valor1:
        instrucciones1;
        break;
    case valor2:
        instrucciones2;
        break;
    ···
    case valorN:
        instruccionesN;
        break;
    default: Instrucciones por defecto;
}

Podemos usar el ejemplo anterior...

class dia_semana_2 {
    public static void main (String argumentos[]) {
        int dia;
            dia=Integer.valueOf(argumentos[0]).intValue();
            switch (dia){
                case 1: {
                    System.out.println("Lunes");
                    break;}
                case 2: {
                    System.out.println("Martes");
                    break;}
                case 3: {
                    System.out.println("Miercoles");
                    break;}
                case 4: System.out.println("Jueves");{
                    break;}
                case 5: System.out.println("Viernes");{
                    break;}
                case 6: System.out.println("Sábado");{
                    break;}
                case 7: System.out.println("Domingo");{
                    break;}
                default: System.out.println("Dia de la semana incorrecto");
        }
    }
}

Comments

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

More information about formatting options