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

如何在控制台中将多个#字符绘制的数字点阵图案横向并排输出

解决方案

原来的单次打印单个数字全5行的逻辑会导致多数字上下堆叠,需要调整为按行批量打印所有数字的对应行:每一行先依次打印所有数字的当前行点阵,点阵之间加1个空格分隔,整行内容全部输出完成后再统一换行。
你原本代码里的i%2分支逻辑完全重复,属于冗余代码,优化版本已经直接删除。

修改后的代码如下:

// 可变参数支持传入任意个数字的点阵矩阵
static void print(int[][]... mats) {
    // 固定遍历5行(所有数字都是5*5点阵)
    for (int i = 0; i < 5; i++) {
        // 遍历每一个要打印的数字矩阵
        for (int k = 0; k < mats.length; k++) {
            int[][] mat = mats[k];
            // 打印当前数字的第i行
            for (int j = 0; j < 5; j++) {
                System.out.print(mat[i][j] == 1 ? "#" : " ");
            }
            // 数字之间加1个空格分隔
            if (k != mats.length - 1) {
                System.out.print(" ");
            }
        }
        // 整行所有数字都打完再换行
        System.out.println();
    }
}

使用示例

要打印两个5并排的效果,直接传入两个5的点阵矩阵即可:

public static void main(String[] args) {
    int mat5[][] = { 
        { 1, 1, 1, 1, 1 },
        { 1, 0, 0, 0, 0 },
        { 1, 1, 1, 1, 1 },
        { 0, 0, 0, 0, 1 },
        { 1, 1, 0, 1, 1 } 
    };
    // 传入两个5的矩阵,实现并排打印
    print(mat5, mat5);
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 13:39:02