Android Java: 将整型数组按特定元素分批处理
本文将介绍如何在 Android Java 中将一个长度为 12 的整型数组分成若干个子数组进行批处理,并详细解释如何将第 5 个元素单独作为一个子数组,以及如何处理剩余元素。
int[] numbers = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
List<int[]> batches = new ArrayList<>();
int[] batch = new int[4];
for (int i = 0; i < numbers.length; i++) {
if (i == 4) { // 第 5 个元素单独作为一个批次
batches.add(new int[]{numbers[i]});
continue;
}
int indexInBatch = i % 4;
batch[indexInBatch] = numbers[i];
if (indexInBatch == 3) { // 一个批次已经满了
batches.add(batch);
batch = new int[4];
}
}
if (batch[0] != 0) { // 最后可能还有一些剩余的元素
batches.add(batch);
}
// 打印分批结果
for (int[] b : batches) {
System.out.println(Arrays.toString(b));
}
在这个代码示例中,我们首先创建一个包含 12 个元素的整型数组 numbers。然后,我们创建了一个 List 来存储分批后的子数组。接着,我们定义了一个长度为 4 的 batch 数组,用来存储每个批次中的元素。
循环遍历 numbers 数组,如果当前索引为 4(即第 5 个元素),我们将该元素单独作为一个子数组添加到 batches 列表中。否则,我们将当前元素放入 batch 数组中,并根据索引判断当前批次是否已满。如果已满,我们将 batch 添加到 batches 列表中,并创建一个新的 batch 数组。
最后,如果 batch 数组中有元素,我们将它添加到 batches 列表中,表示最后的剩余元素。
这段代码实现了将数组按照指定要求进行分批处理,并将每个批次的结果打印出来。
原文地址: https://www.cveoy.top/t/topic/nj3A 著作权归作者所有。请勿转载和采集!