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

Java新手求教:如何用'|'和'_'字符绘制方格网格?

解决方法

你的代码目前只绘制了单行方格的结构,要实现多行网格,只需要把竖线+底部横线的部分用循环重复执行number次即可(因为你要生成number行的方格)。

修改后的代码如下:

package practice;

public class Practice { // 类名首字母大写符合Java命名规范
    
    public static void main (String[] args) {
        squares(4);
    }
    
    public static void squares(int number) {
        // 绘制第一行的顶部横线
        for (int i = 0; i < number; i++) {
            System.out.print(" _");
        }
        System.out.println();
        
        // 重复绘制number行的竖线+底部横线结构
        for (int row = 0; row < number; row++) {
            for (int col = 0; col < number; col++) {
                System.out.print("|_");
            }
            System.out.print("|");
            System.out.println();
        }
    }
}

改动说明

  • 新增外层循环for (int row = 0; row < number; row++),用来控制方格的行数,循环次数等于传入的number值,以此生成对应行数的网格。
  • 原有的竖线绘制代码被放入这个外层循环中,每循环一次就输出一行完整的竖线+底部横线结构。
  • 修正了类名的大小写,这是Java的基础命名规范,能提升代码可读性。

如果需要生成非正方形的网格(比如3行5列),可以修改方法参数,传入行数和列数两个参数,示例如下:

public static void squares(int rows, int cols) {
    // 绘制顶部横线
    for (int i = 0; i < cols; i++) {
        System.out.print(" _");
    }
    System.out.println();
    
    // 绘制每一行的竖线结构
    for (int row = 0; row < rows; row++) {
        for (int col = 0; col < cols; col++) {
            System.out.print("|_");
        }
        System.out.print("|");
        System.out.println();
    }
}

// 调用时传入行数和列数
public static void main(String[] args) {
    squares(3, 5);
}

这种写法能灵活生成不同大小的网格,完全基于你已经掌握的循环和方法知识实现。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 17:57:23