【发布时间】:2014-09-24 05:17:32
【问题描述】:
我是字符串世界的新手,
我的编码如下,
StringBuffer buffer=new StringBuffer();
String addressLineOne=null;
buffer.append(addreeLineOne);
if(buffer.toString!=null)
{
system.out.println("Not NULL");
}
结果:非空; (buffer.toString!=null)==true
尽管我已将 null 附加到缓冲区,但我无法通过 NUll 检查来识别它, 代码打印不为空
为什么会这样?
【问题讨论】:
-
这段代码无法编译,这里没有显示
StringBuffer返回true. -
阅读
StringBuffer的append的javadoc,它指向String.valueOf的javadoc,如果你问我认为你在问什么,它应该回答你的问题。 -
我认为这是一个很好的问题,除了 OP 的编译问题。
-
请不要使用StringBuffer,十年前它被StringBuilder取代了,
toString()永远不应该返回null。你得到的是"null",它是一个带有字母null的字符串。 -
@EJP 代码将在我添加字符串对象而不是 null 时编译。
标签: java stringbuffer