Home / Java Programming / Flow Control :: Discussion

Discussion :: Flow Control

  1. What will be the output of the program?

      public class Switch2
      {   
          final static short x = 2;   
          public static int y = 0;   
          public static void main(String [] args)    
          {        
              for (int z=0; z 3; z++)        
              {            
                  switch (z)           
                  {               
                        case x: System.out.print("0 ");          
                        case x-1: System.out.print("1 ");                
                        case x-2: System.out.print("2 ");          
       
                 }       
     
              } 
    
           }
     
        } 
    

     

  2. A.

    0 1 2

    B.

    0 1 2 1 2 2

    C.

    2 1 0 1 0 0

    D.

    2 1 2 0 1 2

    View Answer

    Workspace

    Answer : Option D

    Explanation :

    The case expressions are all legal because x is marked final, which means the expressions can be evaluated at compile time. In the first iteration of the for loop case x-2 matches, so 2 is printed. In the second iteration, x-1 is matched so 1 and 2 are printed (remember, once a match is found all remaining statements are executed until a break statement is encountered). In the third iteration, x is matched. So 0 1 and 2 are printed.


Be The First To Comment