标签和 goto 的使用可能会给代码带来一些复杂性,因此我们通常建议避免使用,这是为了将代码保持在一个较高的可读性级别:
上面的例子凭借其简单性看起来还蛮清楚的,但随着代码复杂度的提高,代码可能变得难以理解:
- 你可能需要追踪标签位置,这可能离goto语句非常远。- 你的视线需要在代码之间上下移动,以追踪goto语句的走向。循环标签例如,在管理嵌套循环时,使用循环标签通常被视为在特定情况下的良好实践。
设想我们在一个二维数组中寻找一个数字:
现在,来看一个更优雅的解决方案:循环标签让你能够给一个循环起一个名字。
一旦有了名字,你就可以使用 break 或 continue,并跟上标签名,这样可以控制不仅是当前的循环,还有任何包围它的循环。
那结果是什么呢?
代码不仅更短,还更清晰,更易于理解。
我们可以和 'break' 或 'continue' 一并使用循环标签。
当我们需要在 select{} 里使用循环时,这个方法也很适用。
如果你在 select 语句中使用了 break 但没有标签,你只会跳出 select,而不是包含它的循环。
more了解更多编程工具,热门开源项目,生产环境微服务治理与最佳实践可以点击关注了解更多,或者进入专栏学习更深入编程技巧。