Java 2用于外部for循环,其中两个内部for循环添加到字符串中,第一个不执行任何操作

时间:2014-11-10 01:40:24

标签: java loops

public static void diamondOfAsterisks(int numOfRows){
   String diamondStr="";

   for (int row = 1; row == (numOfRows/2+1); row++){
       for (int space = numOfRows; space < row; space--){
           diamondStr += " ";
       }
       for (int stars = 1; stars >= (2 * row) - 1; stars++){
           diamondStr+= "*";
       }
       diamondStr+="\n";
    }

   for (int row = numOfRows/2 ; row >= 1; row--){
       for (int space = numOfRows; space > row; space--){
           diamondStr += " ";
       }
       for (int stars = 1; stars <= (2 * row)-1; stars ++){
           diamondStr += "*";
       }
       diamondStr += "\n";
   }
   System.out.print(diamondStr);

我正在编写一个Java程序来创建一个用星号制作的钻石。上面的代码基于提供给我的伪代码。但是,在带有Java 8u25的NetBeans 8.0.1中(怀疑它是IDE的一个问题,但以防万一),第一个for循环似乎没有向diamondStr添加任何东西。我误解或做错了什么?

1 个答案:

答案 0 :(得分:1)

在第一个for循环中,执行循环的条件是row ==(numOfRows / 2 + 1),我认为这是一个错误 应将其更改为行&lt; =(numOfRows / 2 + 1)