Java中"" 与 null 的区别

String name;
String nickName = “”;
区别一
null :代表的是空对象。
解释:它还没有目标,不知道要指向谁?等同于 String name = null。除了可以操作判断或赋值语句(== || = )外,不可以对其进行其他任何操作。例如 name.trim() 会抛出空指针异常。
“” :代表已经声明了一个对象的实例。
解释:nickName 即已经是一个String类型对象的实例了,它里面存储了一个长度为0的空字符串,已经有了一块空字符串的内存空间,可以对其进行字符串的所有操作。比起name,它真是丰富多了。
应用:

String a ;
/**使用前会进行判断,按照顺序来判断 a 是否被实例化,如果实例化后,则无需再进行判断是否为""。再判断是否*为空,
*如果没有判断 a == null 直接进行判断 a == "" 有时会导致异常
*/
if(a == null || a == ""){
//对a进行使用
}

猜你喜欢

转载自blog.csdn.net/weixin_37716758/article/details/84202068