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

Java打印指定格式三角形代码无法编译,求排查解决方法

问题排查与修复方案

原代码存在的问题

  • 包名trainagkes为拼写错误,建议修正为triangles
  • main方法为空,未调用任何自定义的三角形打印方法,运行后无任何输出
  • rightTriangle 方法逻辑错误:
    1. 空格打印循环的判断条件i >= x完全不满足预期,无法打印对应数量的前置空格
    2. 星号仅打印1个,没有随行数增加而增多
  • 两个方法重复创建Scanner对象,资源浪费
  • 类名未遵循Java大驼峰命名规范(非编译错误,属于规范问题)

修复后可运行代码

package triangles; 

import java.util.Scanner;

// 类名调整为大驼峰符合Java规范
public class Triangle {
    public static void printRightAlignedTriangle() {
        try (Scanner input = new Scanner(System.in)) {
            System.out.print("Enter the number of lines : ");
            int rows = input.nextInt();
            // 外层循环控制行数
            for (int x = 1; x <= rows; x++) {
                // 打印前置空格:数量为总行数-当前行数
                for (int i = 1; i <= rows - x; i++) {
                    System.out.print(" ");
                }
                // 打印星号:数量和当前行数一致
                for (int i = 1; i <= x; i++) {
                    System.out.print("*");
                }
                // 换行
                System.out.println();
            }
        }
    }

    public static void main(String[] args) {
        // 调用打印方法
        printRightAlignedTriangle();
    }
}

运行效果

输入5时输出和需求格式完全匹配:

Enter the number of lines : 5
    *
   **
  ***
 ****
*****

注:你提供的示例排版有偏移,实际运行是标准右对齐三角形。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 03:48:03