我在某些逻辑中使用String targetID = ((Node) targetId.item(0)).getNodeValue()的结果:if (targetID == "OK")else if (targetID == "UNKNOWN_USER"),但是两次比较均失败。我打印出targetID,它正确显示并显示为java.lang.String,所以我在这里错过了什么?

最佳答案

使用equals()而不是==进行字符串比较:

if (targetID.equals("OK")) { ... }


等等

s1 == s2比较引用,这在比较字符串时很少需要。

07-27 22:58