如何返回两个列表之间的差值?
我有两个数组列表,例如
List<Date> a;
contains : 10/10/2014, 10/11/2016
List<Date> b;
contains : 10/10/2016
我如何在列表之间进行检查,以便返回中缺少的值?例如a
b
b
10/10/2014
我有两个数组列表,例如
List<Date> a;
contains : 10/10/2014, 10/11/2016
List<Date> b;
contains : 10/10/2016
我如何在列表之间进行检查,以便返回中缺少的值?例如a
b
b
10/10/2014
您可以将它们转换为集合,并对其执行集差运算。Set
喜欢这个:
Set<Date> ad = new HashSet<Date>(a);
Set<Date> bd = new HashSet<Date>(b);
ad.removeAll(bd);
如果您只想在 b 中查找缺失值,可以执行以下操作:
List toReturn = new ArrayList(a);
toReturn.removeAll(b);
return toReturn;
如果要找出任一列表中存在的值,可以执行两次上部代码。使用更改的列表。