java两个list根据属性取差集
时间: 2023-09-26 14:06:54 浏览: 83
List求差集
假设你有两个List,每个List都包含一些对象,这些对象具有相同的属性。假设你想要从第一个List中提取那些在第二个List中不存在的对象。你可以按照以下步骤进行操作:
1. 创建一个空的List来保存结果。
2. 遍历第一个List中的每个对象。
3. 对于每个对象,检查第二个List中是否存在具有相同属性值的对象。如果不存在,将该对象添加到结果List中。
4. 返回结果List。
下面是一个实现这个算法的Java代码示例:
```
public static List<MyObject> getDifference(List<MyObject> list1, List<MyObject> list2) {
List<MyObject> result = new ArrayList<>();
for (MyObject obj1 : list1) {
boolean found = false;
for (MyObject obj2 : list2) {
if (obj1.getProperty().equals(obj2.getProperty())) {
found = true;
break;
}
}
if (!found) {
result.add(obj1);
}
}
return result;
}
```
在这个例子中,`MyObject`是包含属性的类,`getProperty()`方法返回该对象的属性值。`getDifference()`方法接受两个List作为参数,并返回第一个List中与第二个List不同的对象列表。
阅读全文