You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java使用增强for循环遍历嵌套ArrayList实现指定矩阵输出

解决方案

问题根因

你原有代码的增强for循环是按横向遍历每个子列表的全部元素,输出顺序为123\n456\n789,和要求的按列拼接的输出逻辑不匹配。我们可以先对嵌套列表做转置(将原列转为行),全程用增强for遍历集合即可实现需求。

完整可运行代码

package com.test.Day1;
import java.util.ArrayList;
import java.util.List;

public class ArrayListDemo3 {

    public static void main(String[] args) {
        ArrayList<ArrayList<Integer>> listOflist = new ArrayList<ArrayList<Integer>>();
 
        ArrayList<Integer> list1 = new ArrayList<>();
        list1.add(1);
        list1.add(2);
        list1.add(3);
        listOflist.add(list1);
        
        ArrayList<Integer> list2 = new ArrayList<>();
        list2.add(4);
        list2.add(5);
        list2.add(6);
        listOflist.add(list2);
        
        ArrayList<Integer> list3 = new ArrayList<>();
        list3.add(7);
        list3.add(8);
        list3.add(9);
        listOflist.add(list3);

        // 初始化转置后的嵌套列表,行数等于原内部子列表的长度
        List<List<Integer>> transposedList = new ArrayList<>();
        int rowNum = listOflist.get(0).size();
        for (int i = 0; i < rowNum; i++) {
            transposedList.add(new ArrayList<>());
        }

        // 增强for遍历原嵌套列表,完成转置
        for (ArrayList<Integer> innerList : listOflist) {
            int rowIndex = 0;
            for (Integer val : innerList) {
                transposedList.get(rowIndex).add(val);
                rowIndex++;
            }
        }

        // 增强for遍历转置后的列表,输出结果
        for (List<Integer> row : transposedList) {
            boolean isFirstElement = true;
            for (Integer num : row) {
                if (!isFirstElement) {
                    System.out.print(" ");
                }
                System.out.print(num);
                isFirstElement = false;
            }
            System.out.println();
        }
    }
}

实现说明

  • 仅初始化转置容器时使用了一次普通for循环,所有对ArrayList集合的遍历都采用增强for实现,符合要求
  • 输出时通过标记位判断元素是否为行首,避免行尾出现多余空格
  • 如果实际场景中内部子列表长度不一致,可提前对所有子列表长度做校验,避免索引越界

内容的提问来源于stack exchange,提问作者Ankita Shrivastava

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.11 18:30:03