Tia*_*ago 1 java string string-concatenation
可能重复:
在Java中连接空字符串
我只是想知道是否有人可以解释为什么以下代码的工作方式如下:
String a = null;
String b = null;
String c = a + b;
System.out.println(c.toString());
Run Code Online (Sandbox Code Playgroud)
这会将"nullnull"打印到控制台.
我有点期待操作+会抛出异常,或者在较小程度上抛出"c"将为空.
因为该代码编译成
String c = new StringBuilder().append(a).append(b).toString();
Run Code Online (Sandbox Code Playgroud)
和StringBuilder.append(a)附加的结果String.valueof(a)是"null",如果a是null