java每三个一组平均分配到不同集合中
时间: 2024-11-28 12:05:20 浏览: 0
java_adt_algorithms_1st_year:在帝国理工学院计算一年级期间教授的 Java 算法集合
在Java中,如果你想将一组数据按照每三个元素分组并分别放入不同的集合中,可以使用List接口的subList()方法以及Collections类的partition()方法。假设你有一个ArrayList或其他支持索引操作的列表,例如Integer[]数组。
首先,你需要确定列表的长度能被3整除,因为不能有剩余的元素。然后,你可以这样做:
```java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
public class GroupByThree {
public static void main(String[] args) {
Integer[] numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9}; // 假设这是你要分割的数组
int groupSize = 3; // 每组3个元素
ArrayList<ArrayList<Integer>> groups = new ArrayList<>();
if (numbers.length % groupSize == 0) { // 如果能被均匀分组
for (int i = 0; i < numbers.length; i += groupSize) {
ArrayList<Integer> group = new ArrayList<>(Arrays.asList(numbers.subArray(i, i + groupSize)));
groups.add(group);
}
} else {
System.out.println("无法均匀分成每组3个元素");
}
// 现在groups包含了每个包含三个元素的子列表
for (ArrayList<Integer> group : groups) {
System.out.println(group); // 打印每个子集
}
}
}
```
在这个例子中,`groups`集合会存储每个子集。如果原数组长度不是3的倍数,程序会打印一条错误消息。
阅读全文