我的代码适用于打印“*”但不适用于我想要的模式

时间:2016-07-04 19:08:25

标签: java

我的代码适用于打印3乘3星形图案。但是,当我想用​​我想要的替换它时,它不起作用。我包括了我得到的输出以及我想要的输出

  /*
    * * *
    * * *
    * * * /*

    /* The pattern I want to make is:
   +--+--+--+
   |  |  |  |
   +--+--+--+
   |  |  |  |
   +--+--+--+ 
   |  |  |  |
   +--+--+--+ */

The output that I get:
    *--*
|  |*--*
|  |*--*
|  |
*--*
|  |*--*
|  |*--*
|  |
*--*
|  |*--*
|  |*--*
|  |

 public class HelloWorld
{
  public static void main(String[] args)
  {

for( int i = 0; i<=2; i++){
    for(int j =0; j<=2; j++){
    System.out.print("*--*\n|  |");
    }
  System.out.println();

}
  }
 }

2 个答案:

答案 0 :(得分:1)

试试这个

public static void main(String[] args) {

        for (int i = 0; i <= 2; i++) {
            for (int j = 0; j <= 2; j++) {
                System.out.print("*--");
            }
            System.out.println("*");
            for (int j = 0; j <= 2; j++) {
                System.out.print("|  ");
            }
            System.out.println("|");
        }

        for (int j = 0; j <= 2; j++) {
            System.out.print("*--");
        }
        System.out.println("*");
    }

你的代码不起作用,因为你把几个字符(它们彼此并排放在一起)排成一行。

答案 1 :(得分:1)

使用代码:     package stack_holder;

public class Stack_Holder {

public static void main(String[] args) {


for(int i=0;i<4;i++){

        for(int l=0;l<4;l++){

            for(int j=0;j<1;j++){


                System.out.print("+");

            }

            for(int k=0;k<1;k++){

            if(l==3){break;}
                System.out.print("-");

            }


    }
        System.out.println("");

        for(int m=0;m<4;m++){

            if((i==3) ||(i==4)){break;}
            System.out.print("| ");

        }
        System.out.println("");


    }        
}

}