日期:2014-05-20  浏览次数:20598 次

关于循环报错的问题,请指点
public class TestFor {
public static void main(String[]args){
  for(int i=0;i<10;i++){
  System.out.print(i);
  }
System.out.println();



int x=0;
for( ;x<10;x++){
System.out.println(x);
}


/*
System.out.println();
for(int i=0; ;i++){
System.out.print(i);
}
*/





System.out.println();
for(int i=0;i<10;){
System.out.print(i++);
};


/*
System.out.println();
for( ; ;){
}
*/

System.out.println();
for(int i=0,j=0;i*j<10;i++,j++,System.out.println(i*j)){
}
System.out.println("================");

for(int i=0;i<10;i++){
for(int j=0;j<10;j++){
System.out.println(i+"*"+j+"="+i*j+" ");
}
System.out.println();


}



}



}





疑问:


/*
System.out.println();
for(int i=0; ;i++){
System.out.print(i);
}
*/



/*
System.out.println();
for( ; ;){
}
*/


把这两个语句放进去运行的时候,为什么会出现语法报错,在Myeclipse中没有明确指出,请高手指点指点!


------解决方案--------------------
死循环
------解决方案--------------------
你列举的这两句话:
for(int i=0; ;i++){
System.out.print(i);
}

for( ; ;){
}

明显都是绝对的死循环,而且其中没有任何有意义的语句,你应该是安装了FindBugs之类的逻辑检查插件吧?这类插件会对明显逻辑问题提出不同级别的警告,甚至数据库连接关闭的检查。

如果把插件关掉,缺省情况下,Eclipse是不会对此类逻辑问题进行提示的。
------解决方案--------------------
找个条件跳出去。