Java图形设计循环

Java图形设计循环,java,Java,我想把它换成这样: for(int i = 1; i < 12; i++) { for(int k=11; k > i; k--) { System.out.print("*"); } System.out.print("\n"); } ********** ********* ******** ******* ****** ***** **** *** ** * 我知道我需要以某种

我想把它换成这样:

for(int i = 1; i < 12; i++)
{
        for(int k=11; k > i; k--)
        {
                System.out.print("*");

        }
        System.out.print("\n");
}
**********
*********
********
*******
******
*****
****
***
**
*
我知道我需要以某种方式使用循环和System.out.print(“”)来留出空间


最好的方法是什么?我创建了两个单独的循环,但在下一行命令中,这在两个循环中不起作用。如何将其集成到一个循环中?

使用String.format在字符串中左键填充空格。

对于第二张“图片”:必须在“*”之前打印可变数量的空格。这可以通过在打印“*”的循环之前使用另一个循环来实现,并且知道每次打印一行时,打印的空格数将增加1,星号数将减少1

编辑:

这里有一个提示,让你开始。填空(并删除注释):

int delta=/*fill*/;
对于(int i=0;i
使用二维阵列执行此操作!!!这样做既简单又高效


对于第二个结果:-将“*”放在第行,如果没有打印空格,那么n-(您打印的空格数)星号呢?我忘了添加,我只能使用System.out.print(“*”),System.out.print(“”)和System.out.print(“\n”)。因为这是家庭作业,所以在编程中加入另一个有价值的概念:函数。编写一个函数,将字符
n
打印几次,例如,
repeat(charc,int-times){…}
。然后,对于每一行,您将对空格和星号分别调用一次函数。打印空格后,是否有返回顶部的命令?不,您不会返回顶部,首先打印空格,然后是星号,然后是换行符,这样就完成了一行。最外层的循环将带您“返回顶部”,以便您处理下一行。我喜欢填补空白的概念;)@jjczopek我别无选择,我不想破坏OP的家庭作业:)所以在我上面的代码中,我会将添加的循环放在第一个循环还是第二个循环中?OP说他只能使用
System.out.print()
,所以
String.format()
是不可能的。当然,但是这些信息包含在注释中,而不是实际问题中。您可以使用代码块
来指示一段代码。格式也很好。可以通过在文本周围加上反勾(`)来使用它们。
**********
 *********
  ********
   *******
    ******
     *****
      ****
       ***
        **
         *
int delta = /*fill*/;
for (int i = 0; i < /*fill*/; i++) {
    for (int j = 0; j < /*fill*/; j++) {
        System.out.print(" ");
    }
    for (int j = 0; j < /*fill*/; j++) {
        System.out.print("*");
    }
    delta += /*fill*/;
    System.out.print("\n");
}