如何实现实心与空心星号正方形的并排显示?
实现实心与空心星号正方形并排显示的解决方法
嘿,我懂你现在的困扰——本来想让实心和空心的星号正方形左右挨在一起展示,结果输出变成了上下叠着的,肯定有点头疼对吧?其实根本不用把两个嵌套循环互相嵌套,换个简单的思路就能搞定:每一行同时打印实心正方形的一行和空心正方形的一行,这样就能实现你想要的左右并排效果啦!
举个Java代码的例子给你参考:
public class SquareSideBySide { public static void main(String[] args) { int squareSize = 10; // 这里设置正方形的边长,你可以按需调整 // 外层循环控制行数,每一次循环对应两个正方形的同一行 for (int row = 1; row <= squareSize; row++) { // 先打印实心正方形的当前行 for (int col = 1; col <= squareSize; col++) { System.out.print("*"); } // 用两个空格分隔两个正方形,让排版更清晰 System.out.print(" "); // 再打印空心正方形的当前行 for (int col = 1; col <= squareSize; col++) { // 只有在边界位置(首行、末行、首列、末列)才打印星号 if (row == 1 || row == squareSize || col == 1 || col == squareSize) { System.out.print("*"); } else { System.out.print(" "); } } // 每一行的两个正方形都打印完后,换行进入下一行 System.out.println(); } } }
思路解释
之前你得到上下排列的结果,应该是先把实心正方形的所有行都打印完毕,再去打印空心正方形的行。现在咱们把顺序改了:外层循环每跑一次,就同时生成两个正方形的对应行——先输出实心的一行,再输出空心的一行,中间用空格隔开,最后换行。这样每一行都会包含两个正方形的同一部分,自然就实现左右并排的效果了。
把squareSize改成你需要的数值(比如你例子里的10),运行后就能得到你期望的左右排列样式啦!
内容的提问来源于stack exchange,提问作者Anonimotipy
相关产品推荐
相关产品推荐

