java string为null时的字符串拼接

/ java / 没有评论 / 163浏览
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();
}
点击这里给我发消息
嘿!有什么能帮到您的吗?