【发布时间】:2012-02-11 05:10:06
【问题描述】:
有时,或者好吧,我经常需要查看一个字符串是否为空,所以我使用这样的条件:
if(str != null) {
}
直到今天它都工作得很好,现在即使是空字符串也因为某种我不明白的原因通过了。有谁知道解释吗?还是解决方案?
编辑: 好的,所以由于某种原因,字符串似乎不是空的,这很奇怪,因为我从未定义它是什么,只是定义它存在。因此,该字符串是单词“null”的字符串。我完全不知道为什么会这样?当我执行以下操作时:
String str;
那么它会自动为空,对吗?不管怎样,如果不是,为什么它会变成字符串“null”?
【问题讨论】:
-
您介意 CTRL+A,CTRL+C 您的源代码片段并在此处发布吗?
-
发布错误的完整源代码或堆栈跟踪。
-
也检查条件
str.length(); -
@aviad 好吧,我相信如果我发布我的完整源代码,人们会很在乎。我给了你所有的信息,字符串为空,但仍然通过......为什么?
-
@Wiggyboy - 你所说的实际上是不可能的。如果您发布代码,我们可以弄清楚您为什么认为发生了不可能的事情。我们不需要完整的源代码。只是相关部分;即您认为
if中的语句意味着str是null...以及相关的异常跟踪(如果相关)。
标签: java string if-statement null