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

Discussion

The program is run with java -ea Item84 - what will be the output?

public class Item84
{
    public static void main(String[] args)
    {
        outer:
        for (int i = 0; i < 3; i++)
        {
            for (int j = 0; j < 3; j++)
            {
                if (j == 1) continue outer;
                assert j == 0 : j;
                System.out.print(i);
            }
        }
    }
}

  • A.The program prints 000
  • B.The program prints 012012012
  • C.An AssertionError is thrown.
  • D.The program prints 012

Answer: D

The labelled continue jumps to the next iteration of the outer loop as soon as j reaches 1, so the assertion is only ever checked with j equal to 0 and always passes. Each outer iteration prints its own i once, giving 012. No assertion failure occurs.

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

Post your comment

Please log in or register to post a comment.