代码:
String a = null;
String b = "aaa";
a += b.charAt(0);
System.out.println(a);
结果:
nulla
为什么啊?null不是关键字么?这里怎么当做字面量了啊

解决方案 »

  1.   

    建议你去看看: String.valueOf() 这个系统函数的源码。字符串连接运算之前,系统会尝试把所有对象先转为字符串。
      

  2.   

    因为null被转换成字符串了
      

  3.   

    public static String valueOf(Object obj) {
    return (obj == null) ? "null" : obj.toString();
       }
    懂了!!