用于循环的错误消息'else'没有'if'

时间:2017-04-14 12:46:24

标签: java netbeans-8

基本上,我试图嵌套循环并输出这样的行:

*  
**  
***  
// (and so on)

不幸的是,我在编码时不断收到错误消息,这是我的代码(我记录了我有错误的地方):

for (int i = 0; i< 9; i = i + 2) {
   System.out.print(i + " ");
   for (int j = 1; j<=3; j = j + 1) {
      if (i==8);
        break;
    } else //this else statement is underlined {
       System.out.print("*" + " ");
    }
}

如果有兴趣的话,我也在使用java netbeans ide 8.0。

3 个答案:

答案 0 :(得分:1)

问题在于if:

结束时以分号分隔
if (i==8);
//-------^
break;

所以当你在结尾处做一个分号时,如果意味着一个语句结束,则开始一个新的语句break;

了解更多,你做了什么,意思是:

if (i==8);//end of statement
break;start a new statement

以上相当于:

if(i==8){
   //do nothing
}
break;

要解决您的问题,您需要改为使用它:

if(i==8){
   break;
}

答案 1 :(得分:0)

尝试使用以下内容:

for(int i = 0; i< 9; i = i + 2) {
       System.out.print(i + " ");
       for (int j = 1; j<=3; j = j + 1) {
          if (i==8){
            break;
        } else {
           System.out.print("*" + " ");
        }
    }
}

答案 2 :(得分:0)

  for(int i = 1; i<8; i++) {
       System.out.println("");
       for (int j = 1; j<=i; j++) {
       System.out.print("*");
    }
}

输出:

*  
* *  
* * *  
* * * *  
* * * * *  
* * * * * *  
* * * * * * * 

是你想要的吗?