我知道==
比较两个时存在一些问题Strings
。看起来String.equals()
是一个更好的方法。嗯,我正在做 JUnit 测试,我倾向于使用assertEquals(str1, str2)
。这是断言两个字符串包含相同内容的可靠方法吗?我会用assertTrue(str1.equals(str2))
,但是这样您就无法看到失败时的预期值和实际值。
在相关说明中,是否有人有指向页面或线程的链接,可以清楚地解释以下问题str1 == str2
?
你应该always use .equals()
比较时Strings
在爪哇。
JUnit 调用.equals()
方法来确定方法中的相等性assertEquals(Object o1, Object o2)
.
所以,你绝对可以安全地使用assertEquals(string1, string2)
。 (因为String
s are Object
s)
这是 Stackoverflow 一个很棒的问题的链接 https://stackoverflow.com/questions/1111296/when-s-is-false-but-equals-s-is-true关于之间的一些差异==
and .equals()
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)