Machine-translated by Google. Questions are authored in English.
Top

Discussion

Which line contains the error?

public class Sample78
{
    public static void main(String[] args)
    {
        String cmd = "stop";
        switch (cmd)
        {
            case "stop":
                assert cmd.length() == 4;
                break;
            case "stop ":
                assert false;
                break;
        }
        System.out.println(cmd);
    }
}

  • A.No line here is in error.
  • B.case "stop ":
  • C.assert cmd.length() == 4;
  • D.String cmd = "stop";

Answer: B

Switching on a String is legal, but the two labels differ only by a trailing space, which is almost certainly a typo rather than a real case. It compiles and is simply dead. The assertion in the first branch is true and passes.

No comment is present. Be the first to comment.
Loading…

Post your comment

Please log in or register to post a comment.