This is a follow-up question to some previous questions about String initialization in Java.
After some small tests in Java, I'm facing the following question:
Why can I execute this statement
String concatenated = str2 + " a_literal_string";
when str2
a String
object initialized to null
(String str2 = null;
) but I cannot call the method toString()
on str2
? Then how does Java do the concatenation of a null String object and a string literal?
By the way, I tried also to concatenate an Integer initialized to null and the string literal "a_literal_string"
and I've got the same thing that is "null a_literal_string"
in the console. So whichever kind of null gives the same thing?
PS : System.out.println(concatenated);
gives null a_literal_string as output in the console.