go to previous page   go to home page   go to next page highlighting

Answer:

Of course. Any switch statement can be done with nested ifs .


if Statement Equivalent

If you need to select among several options based on complicated requirements, use nested if statements, or if else if statements (which are really the same thing.) Here is the previous program, rewritten with equivalent if else if statements.


import java.util.Scanner;

class Switcher
{
  public static void main ( String[] args ) throws IOException
  {
    String lineIn;
    char   color  ;    
    String message = "Color is";
    
    Scanner scan = new Scanner( System.in );

    System.out.println("Enter a color letter:");
    lineIn = scan.nextLine();
    color = lineIn.charAt( 0 );  // get the first character

    if      ( color=='r' || color=='R' )    
      message = message + " red" ;

    else if ( color=='o' || color=='O' )               
      message = message + " orange" ;
               
    else if ( color=='y' || color=='Y' )               
      message = message + " yellow" ;
               
    else if ( color=='g' || color=='G' )               
      message = message + " green" ;
               
    else if ( color=='b' || color=='B' )               
      message = message + " blue" ;

    else if ( color=='v' || color=='V' )               
      message = message + " violet" ;

    else 
      message = message + " unknown" ;
            
    System.out.println ( message ) ;
  }
}

QUESTION 12:

Is the program correct? Is == being used correctly?


go to previous page   go to home page   go to next page