如何用Java打印空心正方形

如何用Java打印空心正方形

作者:William Gu发布时间:2026-02-11阅读时长:0 分钟阅读次数:37

用户关注问题

Q
如何在Java中绘制一个边框为星号的空心正方形?

我想用Java程序打印一个由星号组成但中间空心的正方形,这应该怎么实现?

A

使用循环结构打印空心正方形

可以利用双重循环来打印一个边长为n的空心正方形。外层循环控制行数,内层循环控制列数。在每一行的开头和结尾打印星号,而中间部分打印空格,这样中间就形成空心。具体代码需要判断当前打印的位置是否在正方形的边界上。

Q
打印空心正方形时如何动态设置边长大小?

我希望编写一个Java程序,可以根据输入的数字来打印不同大小的空心正方形,有什么思路?

A

通过用户输入控制正方形边长

可以通过Scanner类获取用户输入的边长n,确保n大于等于2。然后使用两层for循环,打印首尾行全是星号,其他行首尾星号,中间空格。结合边长参数,程序能动态生成所需大小的空心正方形。

Q
如何优化Java代码以打印空心正方形更简洁?

在Java中打印空心正方形时,有没有更优雅或者简洁的代码方案?

A

简化判断条件提升代码可读性

可以将打印星号的条件合并为判断当前行号或列号是否为边界(第一行、最后一行、第一列、最后一列),只用一次条件判断即可。这样避免重复代码,使代码逻辑更清晰。此外,可以封装打印函数,便于复用。