abril 03, 2010

switch (palabra clave).

La instrucción switch es otra manera de implementar muchas instrucciones if. Evalúa una expresión del tipo int o que pueda ser convertida a int de forma implícita.

La instrucción switch tiene una gramática ligeramente complicada y debe utilizarse con cuidado. Por ejemplo, utiliza los signos “:” y “;”, la palabra clave case y default. La sintaxis es la siguiente:

switch( n ) 
{
    case valor1:
        instrucciones;
        break;
    case valor2:
        instrucciones;
        break;
    default:
        instrucciones;
}

Donde n es un byte, char, int, short.

Ejemplo 1.
El programa solicita un número del usuario y si este se encuentra en un rango de 1 a 10 muestra el mensaje correspondiente.

/**
 * Ilustra el uso de la estructura switch.
 */
import java.util.Scanner;
public class Switch01
{
    public static void main( String[] args ) 
    {
        int calificacion;
        Scanner teclado = new Scanner( System.in );
        
        System.out.println( "Introduce una calificación del 1 al 10: " );
        calificacion = teclado.nextInt();
        
        switch( calificacion ) {
            case 10:
                System.out.println( "(A) Excelente." );
                break;
            case 9:               
            case 8:
                System.out.println( "(B) Bien." );
                break;
            case 7: 
                System.out.println( "(C) Regular." );
                break;
            case 6:
            case 5:
            case 4:
            case 3:
            case 2:
            case 1:
                System.out.println( "(D) Malo." );
                break;
           default:
                System.out.println( "El número no está en el rango de 1-10" );
        }   //fin-switch
    }   //fin del método main
}   //fin de la clase Switch01

Ejemplo 2.
Utilizar la instrucción break es opcional y es interesante ponerlo o no. Veamos que sucede cuando no utilizamos la instrucción break.

/**
 * Ilustra el uso de la estructura switch.
 */
import java.util.Scanner;
public class Switch02
{
    public static void main( String[] args ) 
    {
        int numero;
        Scanner teclado = new Scanner( System.in );
        
        System.out.print( "Introduce un número del 1 al 10: " );
        numero = teclado.nextInt();
        
        switch( numero ) {
            case 1: System.out.println( "Uno" );
            case 2: System.out.println( "Dos" );
            case 3: System.out.println( "Tres" );
            case 4: System.out.println( "Cuatro" );
            case 5: System.out.println( "Cinco" );
            case 6: System.out.println( "Seis" );
            case 7: System.out.println( "Siete" );
            case 8: System.out.println( "Ocho" );
            case 9: System.out.println( "Nueve" );
            case 10: System.out.println( "Diez" );
            default:
                System.out.println( "El número no está en el rango de 1-10" );
        }   //fin-switch
    }   //fin del método main
}   //fin de la clase Switch02

Mientras no se encuentre el break seguirá con la siguiente instrucción hasta llegar al final de la instrucción.

Véase

0 comentarios:

Publicar un comentario

Deja tus comentarios