我在控制台上绘制了一个带有星号的三角形,带有for循环,从用户那里获取坐标。但我无法绘制五边形。五角形包含3个三角形,但是我编写的程序无法附加这些三角形。它是在控制台上的不同位置绘制3个不同的三角形。如何解决这个问题?你能帮助我吗?
答案 0 :(得分:0)
有两种可能的方法。
您可以创建输出的内部表示(如二维字符数组),您可以在其中绘制图形。
完成图像后,打印整个阵列。
使用转义序列(特定于您的终端)将光标移动到某个位置以绘制字符。
在您的情况下,您应该清除终端一次,然后移动每个星号的光标。
[编辑]至于#1:
char[][] screen = new char[20][]; // 20 lines
for(int i=0;i<screen.length; i++) screen[i] = new char[80]; // 80 columns
现在您可以使用screen[y][x] = '*'
要打印:
for(int i=0;i<screen.length; i++) System.out.print(new String(screen[i]));
System.out.println();