我在JUnit测试中检查两个数组列表的等同性有问题。当我测试两个列表的相等性时,它只检查它们的字符串表示是否相同。它适用于简单的示例,如[1,2,3],[1,2,3]或者当列表包含字符串表示的所有属性的对象时。但是,当我有两个列表具有相同的字符串表示,但一些对象具有不同的属性,我如何检查他们的平等?检查Java中ArrayList的内容是否相等JUnit
这是例如:
如果我有类人(INT高度,INT重量,布尔活着),和toString()方法是对象:
public static String toString() {
return this.height + "-" + this.weight;
}
和我有两个列表[20-30]和[20-30],但在第一对象具有
boolean alive = false
和在第二
boolean alive = true
如何告诉编译器列表不相等?对不起,混淆解释,并提前感谢你! :d
1.检查列表中的每个项目,2.在人类中重写equals方法 – SMA
好的新手问题...很高兴看到你很快接受了答案。你还应该在哪里研究这个主题,而不是盲目地复制某人为你写的代码。 – GhostCat