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 ) ;
}
}
Is the program correct?
Is == being used correctly?