使用 Break 退出多个嵌套循环
虽然嵌套多个“for”循环是迭代数据结构的常见方法,但过早退出所有循环有时循环可能是必要的。我们可以利用 'break' 函数来达到这个目的吗?
'break' 的局限性
不幸的是,'break' 函数在其直接作用范围内运行环形。应用它来打破多个嵌套循环是无效的。尝试这样做只是终止当前循环,而使嵌套循环不受影响。
“goto”的情况
具有讽刺意味的是,值得信赖的“goto”语句通常在现代编程实践中不受欢迎的做法,作为针对这种特定场景的适当解决方案而出现。与“break”不同,“goto”允许在代码块之间跳转,无论其嵌套级别如何。
控制循环退出深度
控制使用退出的循环数量“goto”涉及标记循环并指定适当的标签作为“goto”目的地。例如,要退出两个嵌套循环:
outer_loop: for (initialization1; condition1; increment1) { inner_loop: for (initialization2; condition2; increment2) { // Exit both loops if (condition) { goto outer_loop; } } }
通过跳转到与最外层循环关联的标签,两个嵌套循环都会立即终止。
因此, while 'break' 不适合退出多个嵌套循环,“goto”提供了必要的功能,尽管语法不太优雅。
以上是当'break”失败时,'goto”可以帮助退出多个嵌套循环吗?的详细内容。更多信息请关注PHP中文网其他相关文章!