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

Discussion

What will be the output of the program?

public class Fragment38
{
    public static void main(String[] args) throws Exception
    {
        String s = null;
        String joined = "value: " + s;
        System.out.println(joined + " " + joined.length());
    }
}

  • A.A NullPointerException is thrown.
  • B.The program prints value: null 11
  • C.The program prints value: 7
  • D.The program prints value: null 10

Answer: B

String concatenation converts a null reference to the four characters null rather than throwing, so the result is the eleven characters of value: null. Calling a method on s directly would have thrown. The conversion is specified behaviour of the concatenation operator.

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

Post your comment

Please log in or register to post a comment.