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

Discussion

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

public class Probe62
{
    public static void main(String[] args)
    {
        assert (1 << 33) == 2;
        System.out.println(1 << 33);
    }
}

  • A.An AssertionError is thrown.
  • B.The program prints 2
  • C.The program prints 8589934592
  • D.Compilation fails.

Answer: B

For an int shift only the low five bits of the shift distance are used, so a shift of 33 is the same as a shift of 1 and the result is 2. The assertion is true and 2 is printed. The value does not become zero, which is the usual guess.

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

Post your comment

Please log in or register to post a comment.