我有两个不同对象的数组。
ArrayList<Array1> array1 = new ArrayList<>();
ArrayList<Array2> array2 = new ArrayList<>();
我想将这些数组合并到
ArrayList<Object> array = new ArrayList<>();
with pattern,对于array1中的每3-4个项目,在array2中添加项目。
我该怎么做?
答案 0 :(得分:3)
你可以保持简单,只需使用循环:
for (int i=0; i < array1.size(); ++i) {
array.add(array1.get(i));
if ((i+1) % 4 == 0) {
array.add(array2.get(i/4));
}
}
上述循环的逻辑是每次迭代总是将array1
中的项添加到最终列表中。此外,在从array1
添加4个项目后,它会添加array2
中的项目。
我假设array2
有足够的元素支持覆盖enitre array1
列表。如果您计划在生产中执行此操作,您可能需要检查此边缘情况。