class Srcontinue2
{
public static void main(String args[])
{
uper:  //我觉得跳到这里
for(int i=1;i<=3;i++) //i应该被重新赋值过
{
for(int j=1;j<=3;j++)
{
System.out.println("i:"+i+"j:"+j);
if(i+j>3)
{
System.out.println("继续");
continue uper; //在JAVA语法中这个有什么实际用到??
}
}
}
}
}

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【sure2003】截止到2008-06-25 22:17:54的历史汇总数据(不包括此帖):
    发帖数:180                发帖分:8606               
    结贴数:180                结贴分:8606               
    未结数:0                  未结分:0                  
    结贴率:100.00%            结分率:100.00%            
    敬礼!
      

  2.   

    如果放在那个位置似乎会陷入到死循环中,break ,continue 标签 就是类似于goto, 
      

  3.   

    那还为什么说JAVA去掉GOTO了呢
    压根就是换了个说法,CONTINUE就成了GOTO的别名了
      

  4.   

    一旦执行了 continue uper; 就直接进入打上 uper 标签的 for(int i=1;i<=3;i++) 循环的下一次,只是类似 C/C++ 中的 goto label; 语句,但要比它限制多得多,continue label; 只能用在循环语句中。
      

  5.   

    在循环前面加上标签,就好像给循环起了个名字。而后在循环中使用 break 或者 continue 语句的时候,就可以带上这个标签做为参数,指明跳出 (break) 或者继续 (continue) 哪一个循环,如“break mylabel;”、“continue mylabel;”。    /** 
         * 演示查找过程,使用带标签的 break 和 continue 语句。
         */
        public void search() ......{
            //loop1:
            // 若在此处定义标签,由于不是其后紧跟循环语句,所以会被勿略掉。
            // 被忽略掉的标签,如果在 break 或者 continue 语句中用到,编译时不能通过。
            // 如果没有在 break 或者 continue 中用到则编译可以成功。
            System.out.println("--- Begin Searching ---");
            loop1: for (int i = 0; i < row; i++) ......{
                for (int j = 0; j < col; j++) ......{
                   if (data[i][j] > lookfor) ......{
                        System.out.println("--- JUMP ---");
                        continue loop1; // 想想此处用 break,结果会有什么变化
                    }
                    if (data[i][j] == lookfor) ......{
                        System.out.println("FOUND: data[" + i + "][" + j + "] = "
                                + lookfor);
                        break loop1; // 想想此处用 return,结果会有什么变化
                    }
                    System.out
                            .println("data[" + i + "][" + j + "] = " + data[i][j]);
                }
                System.out.println("--- LOOP2END ---");
            }
            System.out.println("--- End Searching ---");
        }
      

  6.   


     goto可以直接从goto所在的行跳到他的label.
     goto可以写在任意地方,不限定在循环或判断里面。而continue和break必须写在循环或判断里面。
      

  7.   

    Java 中有 goto 关键字,但这个关键字没有任何作用,换句话说,我们不能使用 goto 来进行跳转到某行。实际上,结构化程序设计完全不需要 goto 语句即可完成各种流程,而 goto 语句的使用往往会使程序的可读性降低,所以 Java 不允许 goto 跳转。  Java 中同样可以定义标签,使用标识符加冒号 (:) 的形式,如“mylabel:”。不过既然 Java 中的 goto 没有实质性的作用,标签的设计当然就不是为了 goto。  Java 中的标签是为循环设计的,是为了在多重循环中方便的使用 break 和 coutinue 而设计的。正是由于这个原因,Java 的标签只能定义在三种循环 (for() {}, do{} while(), while() {}) 的开始位置,否则编译器会报告说找不到标签
      

  8.   

    怎么值??------只有第一次才int i=0;然后每次循环都是执行i++;没有标签之前也是能记得上次的i值的啊。
    不知道,等高手来:
      

  9.   


    是直接进入打上你那标签的 for 的下一次循环,即 for(int i=1;i<=3;i++) 不再 int i = 1 了,而是直接 i++ 然后看看 i <= 3 是否成立,成立就再执行循环体。