为什么在java中出现未定义标签错误?
为什么在下面的代码中出现未定义的标签错误?? 我忽略了代码,因为它没有用为什么在java中出现未定义标签错误?,java,label,continue,Java,Label,Continue,为什么在下面的代码中出现未定义的标签错误?? 我忽略了代码,因为它没有用 loopLabel: for(i=0;;i++) { { some code; } { come code; } } if(condition) { if(condition) { some code } else { some code; continue loopLabel;
loopLabel:
for(i=0;;i++)
{
{ some code;
}
{ come code;
}
}
if(condition)
{
if(condition)
{ some code }
else
{
some code;
continue loopLabel;
}
}
continue
用于跳到循环的新迭代的开始;如果有嵌套循环并且要指定跳转到哪个循环,则使用标签。您试图将其作为goto
跳转到完全不相关的代码部分,这是不允许的
合法用法类似于:
foo:
while(cond1) {
code;
while(cond2) {
if(cond3) {
continue foo;
}
}
}
()
continue
用于跳到循环的新迭代的开始;如果有嵌套循环并且要指定跳转到哪个循环,则使用标签。您试图将其作为goto
跳转到完全不相关的代码部分,这是不允许的
合法用法类似于:
foo:
while(cond1) {
code;
while(cond2) {
if(cond3) {
continue foo;
}
}
}
()因为你在循环之外。标签仅在循环内部可见
标签仅用于断开和继续循环。因为您在循环之外。标签仅在循环内部可见
标签仅用于断开和继续循环。可以将“继续”放在“如果”内,如果“继续”在“循环”的上部,但不能放在“独立如果”内。因为它用于中断循环,这意味着忽略循环结束时剩下的所有内容。如果在上for循环中,则可以将continue放在内部,但不能将其放在standalone if中。因为它用来打破一个循环,意思是忽略所有其他的东西,循环中剩下的东西在这里结束。然后。。。有没有其他方法可以让我获得goto的确切功能?实际上,你可以将你的代码包装成
do{…}while(false)代码>以便能够跳回开始。但这会导致代码不清晰/不可维护,因此不赞成使用。continue
不会跳回开头。在这种情况下,它将测试条件(false
)并结束循环。您必须执行而(true){}
并在最后中断。但是,是的,这将是可怕的,我可能应该重组计划。。!谢谢大家!然后。。。有没有其他方法可以让我获得goto的确切功能?实际上,你可以将你的代码包装成do{…}while(false)代码>以便能够跳回开始。但这会导致代码不清晰/不可维护,因此不赞成使用。continue
不会跳回开头。在这种情况下,它将测试条件(false
)并结束循环。您必须执行而(true){}
并在最后中断。但是,是的,这将是可怕的,我可能应该重组计划。。!谢谢大家!不知道,但我取消了不知道,但我取消了