
我正在比较两个字符串,显然它们不相等,但它们是相等的。我想知道有哪些问题可能导致这种情况,可能是数据类型、我看不到的隐藏内容,或者是什么。任何输入都可能会有所帮助。谢谢。

我正在比较两个字符串,显然它们不相等,但它们是相等的。我想知道有哪些问题可能导致这种情况,可能是数据类型、我看不到的隐藏内容,或者是什么。任何输入都可能会有所帮助。谢谢。
字符串/对象比较应该使用equals(),而不是==(字符串文字比较的情况除外)
例子:
if(string.equals(string2)){
}
==检查引用相等,equals()检查内容相等。阅读此讨论。
field.trim().equalsIgnoreCase("formDateCreated")
尝试这个。String trim() 方法返回字符串的副本,省略前导和尾随空格。
equalsIgnoreCase(String anotherString)
当您不考虑案例时。此检查天气您的字符串内容是否等于 == 的参考
我建议你检查如下
"formDateCreated".equalsIgnoreCase(field)
这样它可以帮助您克服可能的 NullPointerException
使用.equals()方法来检查字符串是否相等,例如field1.equals("formDateCreated").
==运算符只检查两个引用变量是否引用同一个字符串实例。equals()方法检查两个字符串是否有意义地相等。