java string为null时的字符串拼接
public class HelloWorld { public static void main(String args[]) { String s = null; s = s+"word"; System.out.println("hello " +s); } }
对于上面的方法,可能很多人会以为输出是“hello word”。但是,运行后,结果却并不是我们所以为的那样。
运行后的结果是”hello nullword“
s = s+"word"; 等价于 s = String.valueOf(s)+"word"; Integer,Double都一样。
String的源码:
public static String valueOf(Object obj) { return (obj == null) ? "null" : obj.toString(); }
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: java String常量池与字符串拼接性能优化
- 下一篇: 剖析java中的String之__拼接