Java 使用相同的对象断言2个列表
我有一个Java测试项目。我有两个不同的列表和一些对象。如何断言此列表包含相同的对象(不仅等于)?Java 使用相同的对象断言2个列表,java,unit-testing,junit,Java,Unit Testing,Junit,我有一个Java测试项目。我有两个不同的列表和一些对象。如何断言此列表包含相同的对象(不仅等于)?私有布尔资产SameObject(列表列表1,列表2){ assertEquals(list1.size(),list2.size()); 对于(int i=0;i
私有布尔资产SameObject(列表列表1,列表2){
assertEquals(list1.size(),list2.size());
对于(int i=0;i
您可以执行以下操作:
- 迭代列表(在一个列表中迭代另一个列表)
- 使用
比较条目,因为您要比较引用=
- 如果在内部列表中未找到外部列表中的条目,则返回
false
- 如果外部列表的迭代完成,则返回
(外部列表中的所有对象引用也存在于内部列表中)true
private boolean assertSameObjects(List<?> list1, List<?> list2) {
assertEquals(list1.size(), list2.size());
for (int i = 0; i < list1.size(); i++) {
assertSame(list1.get(i), list2.get(i));
}
}