我认为那应该是一个非常简单的问题。但是不知何故我无法在Google中找到答案。
假设我有2个字符串列表。第一个包含“字符串A”和“字符串B”,第二个包含“字符串B”和“字符串A”(注意顺序不同)。我想用JUnit测试它们,以检查它们是否包含完全相同的字符串。
是否有任何断言可以检查忽略顺序的字符串是否相等?对于给定的示例org.junit.Assert.assertEquals抛出AssertionError
java.lang.AssertionError: expected:<[String A, String B]> but was:<[String B, String A]>
解决方法是先对列表进行排序,然后再将它们传递给断言。但是我希望我的代码尽可能简单和干净。
我使用Hamcrest 1.3,JUnit 4.11,Mockito 1.9.5。
list1.removeAll(list2)
应该list1
留空。我想您可以在此基础上获得想要的东西。