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中没有明确指出,请高手指点指点!

解决方案 »

  1.   

    不是语法报错,而是逻辑错误。
    如果你的for循环中有结束循环的语句,就可以通过。
    这是skd编译器给你的彩蛋而已
      

  2.   


    /*
    System.out.println();
           1    2  4
            5  7 
    for(int i=0; ;i++){
          3
      6
    System.out.print(i);
    }
    ///
    ///根据以上代码for循环机制执行的顺序是:先执行1,也就是第一个分号的语句,
    ///如果没有则直接判断2条件,如果条件满足则执行3代码区,执行完毕后执行4/7
    ///也就是尾部代码,然后再次到5判断条件,如果满足循环条件则继续执行,否则退
    ///出,由于你的代码条件部分为省略状态,所以我想会无视条件一直循环下去
    ///
    *//*
    System.out.println();
    for( ; ;){
    }
    ///如上所说执行到这个for的时候什么都没有,循环就会死在这不会再往下执行
    ///
    ///
    ///
    */
      

  3.   

    /*
    System.out.println();
           1    2  4
            5  7 
    for(int i=0; ;i++){
          3
      6
    System.out.print(i);
    }
    ///
    ///根据以上代码for循环机制执行的顺序是:先执行1,也就是第一个分号的语句,
    ///如果没有则直接判断2条件,如果条件满足则执行3代码区,执行完毕后执行4/7
    ///也就是尾部代码,然后再次到5判断条件,如果满足循环条件则继续执行,否则退
    ///出,由于你的代码条件部分为省略状态,所以我想会无视条件一直循环下去
    ///
    *//*
    System.out.println();
    for( ; ;){
    }
    ///如上所说执行到这个for的时候什么都没有,循环就会死在这不会再往下执行
    ///
    ///
    ///
    */