ArrayList比较并获取共享值

Vag*_*ism 1 java arraylist

我很想找到解决以下问题的方法.我有4个不同的ArrayList从数据库中获取它们的值.它们的大小可以从0(包括)到现在.每个列表也可能具有不同的大小和值.我想要有效地做的是:比较所有非0大小的列表,并检查它们是否有一些常见的整数以及这些值是什么.

有任何想法吗?谢谢!

Eug*_*sky 6

如果你需要一个普通整数的集合,不包括空整数:

List<List<Integer>> lists = ...
Collection<Integer> common = new HashSet<Integer>(lists.get(0));
for (int i = 1; i < lists.size(); i++) {
   if (!lists.get(i).isEmpty()) 
     common.retainAll(lists.get(i));
}
Run Code Online (Sandbox Code Playgroud)

最后,common它将包含所有这些整数相同的整数.