在Java中适当使用多级中断

Rav*_*mer 3 java label while-loop switch-statement

我最近编写了一个小的java程序(作为8086汇编程序的设计)并且我处于一个有趣的位置 - 我需要退出一个内部switch语句的while循环,就像这样(伪代码,显然):

:MyLoop
While(foo)
    switch (bar)
       case '1': print '1'; break
       case '0': print '0'; break
       case ';': end while loop;
Run Code Online (Sandbox Code Playgroud)

它似乎是goto语句的理想之处,因为单个"break"只会退出switch语句,(特别是考虑到我是为汇编而设计的)但是Java没有任何东西!

我发现Java有一个叫做多级中断的东西,所以通过使用"break MyLoop",程序将突破switch case while循环."

那么我的问题是 - 这是多级休息的恰当用途吗?如果出于某种原因,我想保持切换(而不是嵌套的其他ifs)语句,是否有另一种方法可以通过"break"或"continue"单独模仿多级中断?

Jon*_*eet 12

就个人而言,我通常认为这是一个提示将循环重构为自己的方法 - 然后你可以从整个方法返回而不是只是打破循环.

在大多数情况下,我个人认为更清楚 - 但除此之外,这正是标记为休息的东西.它通常比具有boolean指示是否继续循环的单独变量更清晰(IMO).