oshai oshai - 1 year ago 77
Java Question

String concatenation with Null

I have the following code

System.out.println("" + null);


and the output is
null
.

How does Java do the trick in string concatenation?

Answer Source

Because Java converts the expression "A String" + x to something along the lines of "A String" + String.valueOf(x)

In actual fact I think it probably uses StringBuilders, so that:

"A String " + x + " and another " + y

resolves to the more efficient

new StringBuilder("A String ")
    .append(x)
    .append(" and another ")
    .append(y).toString()

This uses the append methods on String builder (for each type), which handle null properly

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download