二维数组遍历
使用嵌套for-each循环可以优雅地处理多维数组:
// 创建一个3x4的二维数组
int[][] matrix = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
// 使用嵌套for-each循环遍历
System.out.println("矩阵内容:");
for (int[] row : matrix) {
for (int element : row) {
System.out.printf("%4d", element);
}
System.out.println(); // 换行
}
// 计算矩阵所有元素的和
int sum = 0;
for (int[] row : matrix) {
for (int element : row) {
sum += element;
}
}
System.out.println("矩阵元素总和: " + sum);
集合的集合
处理复杂的嵌套数据结构:
// 创建班级学生信息
List> classes = new ArrayList<>();
// 添加各班学生
classes.add(Arrays.asList("张三", "李四", "王五"));
classes.add(Arrays.asList("赵六", "钱七", "孙八", "周九"));
classes.add(Arrays.asList("吴十", "郑十一"));
// 遍历所有班级和学生
int classNumber = 1;
for (List classStudents : classes) {
System.out.println("第" + classNumber++ + "班:");
for (String student : classStudents) {
System.out.println(" - " + student);
}
}
// 统计总学生数
int totalStudents = 0;
for (List classStudents : classes) {
totalStudents += classStudents.size();
}
System.out.println("总学生数: " + totalStudents);
Map中的集合
// 商店商品分类
Map> store = new HashMap<>();
store.put("水果", Arrays.asList("苹果", "香蕉", "橙子"));
store.put("蔬菜", Arrays.asList("白菜", "萝卜", "土豆"));
store.put("肉类", Arrays.asList("猪肉", "牛肉"));
// 遍历商品分类
for (Map.Entry> category : store.entrySet()) {
System.out.println(category.getKey() + "类:");
for (String product : category.getValue()) {
System.out.println(" - " + product);
}
}