使用JUnit比较ArrayLists是否相等的简单方法?

使用JUnit比较ArrayLists是否相等的简单方法是什么? 我需要实现相等接口吗? 或者是否有一个简单的JUnit方法,使其更容易?

你需要对列表相等没什么特别的,只需使用assertEquals。

ArrayList和其他列表通过使用对象的equals()方法检查列表的相应位置中的所有对象是否相等来实现equals()。 因此,您可能希望检查列表中的对象是否正确等于。

您可能需要查看List.equals的文档。

我认为这可能是一个稍微简单的答案(虽然它是正确的)。 测试ArrayLists for equals意味着你已经考虑了元素的相等性。 如果元素是整数,那就没问题了。 但如果它们是您自己的域类的实例,那么您应该了解围绕平等(和克隆)的陷阱。 请查看:

http://www.artima.com/lejava/articles/equality.html

有关实施平等的一系列建议。 旁白:如果您需要克隆对象,请考虑使用复制构造函数而不是实现cloneable。 Cloneable引入了一些你可能没想到的问题。