Sail E0 Webinar
Question


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 ");
}
}
}
}
Options:
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
Answer: Option D

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.



Was this answer helpful ?
Next Question

Submit Solution

Your email address will not be published. Required fields are marked *

Latest Videos

Latest Test Papers