在java中String是一个很特殊的类,它是不可更改的。
String a ="",表示声明一个字符串类型的引用,其值为""空字符串,这个a引用指向的是空字符串的内存空间;
String a=null,表示声明一个字符串对象的引用,没有指向任何的内存空间
由上面的图可知
- 空字符串对象与null的值不相等,且内存地址也不相等;
- new String()创建一个字符串对象的默认值为""
判断字符串是否为空的方法
1.if(a==null || "".equal(a))
此方法比较清晰可见
2.if(a==null || a.length == 0)
此方法效率比较高