【发布时间】:2011-02-11 21:28:03
【问题描述】:
我遇到了一个让我很困惑的问题。我的 android 应用程序中有以下代码行:
System.out.println(CurrentNode.getNodeName().toString());
if (CurrentNode.getNodeName().toString() == "start") {
System.out.println("Yes it does!");
} else {
System.out.println("No it doesnt");
}
当我查看第一个 println 语句的输出时,它在 LogCat 中显示为“start”(显然没有引号)。但是当 if 语句执行时,它会转到 else 语句并打印“No it doesn't”。
我想知道节点的名称中是否可能包含某种非打印字符,因此我检查了来自 getNodeName() 的字符串的长度,它是 5 个字符长,如您所料。
有人知道这里发生了什么吗?
【问题讨论】:
标签: java android string equals equality