0

屏幕截图

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

4

4 回答 4

2

字符串/对象比较应该使用equals(),而不是==(字符串文字比较的情况除外)

例子:

if(string.equals(string2)){
}

==检查引用相等,equals()检查内容相等。阅读此讨论

于 2013-01-17T16:09:01.653 回答
2
field.trim().equalsIgnoreCase("formDateCreated")

尝试这个。String trim() 方法返回字符串的副本,省略前导和尾随空格。

于 2013-01-17T16:19:38.010 回答
1
equalsIgnoreCase(String anotherString)

当您不考虑案例时。此检查天气您的字符串内容是否等于 == 的参考

我建议你检查如下

"formDateCreated".equalsIgnoreCase(field)

这样它可以帮助您克服可能的 NullPointerException

于 2013-01-17T16:10:42.913 回答
1

使用.equals()方法来检查字符串是否相等,例如field1.equals("formDateCreated"). ==运算符只检查两个引用变量是否引用同一个字符串实例。equals()方法检查两个字符串是否有意义地相等。

于 2013-01-17T16:09:24.113 回答