switch




The switch statement is similar to an if else if statement, but it is mostly meant for checking for equality.

Examples:


// In the switch (value) part of the statement, value must be
// an ordinal primitive type (i.e. no double or float values).


Example 1:


public String getMorseCodeFor(char letter)
{

    switch (letter)
    {	    
        case 'A' : return ".-";   // if (letter == 'A') return ".-";
        case 'B' : return "-..."; // if (letter == 'B') return "-...";
        case 'C' : return "-.-."; // if (letter == 'C') return "-.-.";
        case 'D' : return "-..";  // if (letter == 'D') return "-..";
        // etc.

        default  : return ""; // none found
    }
    return ""; // none found
}


Example 2:


public String getGradeRange(char letter)
{

    switch (letter)
    {	    
        case 'A' : return "90 - 100";
        case 'B' : return "80 - 89"; 
        case 'C' : return "70 - 79"; 
        case 'D' : return "60 - 69";  
        default  : return "0 - 59"; 
    }
    return "0 - 59"; // none found
}


Example 3:

// a break is necessary here since we used
// an assignment statement instead of a return
// for each possibility (case)
// without a break, all subsequent cases get 
// executed after an equality is found
public String getGradeRange(char letter)
{
    String result = "";
    switch (letter)
    {	    
        case 'A' : result = "90 - 100"; break;
        case 'B' : result = "80 - 89";  break;
        case 'C' : result = "70 - 79";  break; 
        case 'D' : result = "60 - 69";  break;  
        default  : result = "0 - 59";   break; 
    }
    return result;
}