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

如何用Java打印无内部星号的三角形?优化代码逻辑

实现空心三角形的核心思路

Got it, let's break down the logic you need to tweak your existing pyramid code into a hollow triangle—no full code, just the key ideas:

  • 保留外层循环和前置空格逻辑:你的原代码里控制行数的外层循环,以及用来打印左侧缩进空格的第一个内层循环,完全可以保留。空心三角形的缩进规则和实心金字塔是一样的,每行的前置空格数还是5 - i个。
  • 修改星号行的打印逻辑:这是核心变化,原来的第二个循环全打* ,现在要分情况:
    • 对于每一行(除了最后一行):只在该行的第一个位置(也就是循环变量k=0时)和该行的最后一个位置(也就是k=i时)打印* ,中间的所有位置都打印和* 宽度一致的空格(也就是 ,保证整体对齐)。
    • 对于最后一行:直接和原代码一样,打印所有的* ,因为空心三角形的底部是实心的,这样才符合三角形的完整形状。
  • 逻辑本质:简单来说就是把实心的星号区域,只保留边缘的星号标记,中间替换成空白,同时维持底部的实心状态,就能从实心金字塔转变成空心三角形。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 10:30:14