一、下面程序会出错
class Test {
public static void main(String[] args) {
for(int i = 0; i <= 10; i++) 
   Integer k = new Integer(i);
System.out.println("Java Puzzlers");
}
}
错误:
Te.java:4: 不是语句
                   Integer k = new Integer(i);
                   ^
Te.java:4: 需要 ';'
                   Integer k = new Integer(i);
                           ^
2 错误二、这样则运行成功
class Test {
public static void main(String[] args) {
for(int i = 0; i <= 10; i++) 
   new Integer(i);
System.out.println("Java Puzzlers");
}
}
WHY?

解决方案 »

  1.   

    呵呵,我出的题目http://community.csdn.net/Expert/TopicView3.asp?id=5731833在上面的那个帖子里找到 bao110908 在 2007-8-29 10:13:19 的回复,里面有解释的。
      

  2.   

    至于第二个问题,由于不是变量声明,仅作为 for 中的一条执行语句。因为变量声明的作用范围在一个块内(块即是一对花括号),所以第一个是错的。
      

  3.   

    谢谢bao110908(好没劲~~)了,看了你的解析,一下子明朗了许多