我有两个类列表,如List<Aclass>
A1和List<Bclass>
b1,两个列表都包含一个常见的字段。所以通过使用这个领域,我必须比较这两个列表?请任何人都可以帮我吗?确保这些班级名单不同。如何在java中比较两个不同的列表对象?
回答
结帐the javadoc for List.equals():
两个列表被定义为等于如果它们包含以相同的顺序相同的元件。
可以在这里使用equals方法,当然会忽略你声明两个列表的通用类型。 AbstractList
(其中ArrayList和一堆其他列表类实现)的equals方法将遍历这两个列表,并按顺序在每个元素上调用equals,一旦完成,确保任一列表中都没有任何项目。
考虑到这一切,你就可以调用equals方法,以确定天气两个列表包含相同的元素:
List<Aclass> A1 = new ArrayList<Aclass>();
List<Bclass> b1 = new ArrayList<Bclass>();
// getElement returns a private field that can be cast to both Aclass and Bclass
A1.add(getElement());
b1.add(getElement());
if (A1.equals(b1)) {
System.out.println("two lists are equal");
}
您的意思是“huGe”? – 2011-03-12 14:02:25
@Yasir是的,我不知道目前发生了什么,我的键盘不公平。 – krock 2011-03-12 14:11:49
学习一些触摸打字然后,节省大量的拼写错误;-) – 2011-03-12 14:22:05
我不知道我完全理解这个问题,但你问对于这样的事情?
public boolean compare (List<AClass> listA, List<BClass> listB) {
if (listA.size() != listB.size() return false;
for (int i=0; i<listA.size(); i++) {
AClass aClass == (AClass) listA.get(i);
BClass bClass == (BClass) listB.get(i);
if (aClass.commonField != bClass.commonField) return false;
}
return true;
}
两个列表应该由commonField字段排序
- 1. 比较两个对象,java
- 2. 比较两个不同对象的值
- 3. 如何比较SQL中两个不同表中的两列?
- 4. 来比较不同的两个列表比较快的方式对象
- 5. 比较两个不同对象的列表
- 6. 比较列表中同一对象的两个实例
- 7. 比较两个对象列表C#
- 8. Drools:如何比较drools中两个不同对象的属性?
- 9. 比较两个不同的列表
- 10. MATLAB - 如何比较两个对象是相同还是不同
- 11. 比较Java中的两个表列值
- 12. 比较两个列表中的Java
- 13. 是否可以比较两个不同的java对象?
- 14. 比较两个列表以获取在两个列表中出现的对象
- 15. 比较Java中的两个对象列表以删除重复对象
- 16. 比较同一类的两个对象
- 17. 如何比较两个不同活动的上下文对象..?
- 18. 如何在Java中比较两个不同的日期时间?
- 19. 如何在jQuery的出现在同一阵列中两个比较对象
- 20. 比较两个对象列表中的<Items>在C#UWP
- 21. 如何比较java中arraylist对象的两个变量
- 22. 比较两个相同的json列表与对象内的对象和对象的顺序不同
- 23. 如何比较在angularjs中的两个不同函数中声明的两个不同的对象数组?
- 24. scala中如何比较两种不同类型的对象?
- 25. 查询比较两个不同表中两列的差异
- 26. 如何在java中比较对象?
- 27. 比较两个列表<enum>对象在C#中
- 28. 如何比较两个不同表中的相同字段?
- 29. 如何比较两个独立对象中的两对整数?
- 30. 如何比较两个数组对象
你是什么意思一个领域是不同的?它是一个像'Person'这样的对象的列表,其中诸如'name'之类的属性是不同的?请在提问时尝试更清楚。 – adarshr 2011-03-12 13:51:34
你是什么意思'比较'?你想排序列表或什么? – adarshr 2011-03-12 13:52:54
而且,请不要在帖子中使用签名,它已经在这里,在帖子下面。谢谢。 – 2011-03-12 13:54:09