str==null || str.equals("")) (注意顺序)
再澄清一个概念:
如果str==null说明str还未定义内容。此时,谈不上是否为空。
str="",说明str是个空字符串。只不过长度为0。
------------------------------------------------------------------------------------------------------
String s;
...
if(s==null)
{
//为null;
}
if (s.equals(""))
{
//为空字符串;
}
if (s.length()==0)
{
//为空字符串;
}
==是用来判断对象句柄地址的。说明s还未定义内容。此时,谈不上是否为空。
equal是用来判断句柄内容的。
想要实现equal的效果可以使用这样
s.intern=="".intern
本文详细解释了Java中如何正确判断一个字符串变量是否未定义(null)及是否为空字符串()。通过示例代码展示了使用==操作符判断null与使用equals方法或length属性判断空字符串的区别。
2049

被折叠的 条评论
为什么被折叠?



