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 y: System.out.print("0 "); /* Line 11 */                   
                
     case x-1: System.out.print("1 "); /* Line 12 */                   
                
     case x: System.out.print("2 ");   /* Line 13 */                
                 }       
              }   
           }
        } 
    
    

     

  2. A.

    0 1 2

    B.

    0 1 2 1 2 2

    C.

    Compilation fails at line 11.

    D.

    Compilation fails at line 12.

    View Answer

    Workspace

    Answer : Option C

    Explanation :

    Case expressions must be constant expressions. Since x is marked final, lines 12 and 13 are legal; however y is not a final so the compiler will fail at line 11.


Be The First To Comment