17_循环中断_break&continue
循环中断 break、continue
* 说明
* 1. scala 去掉了break、continue
* break替代方案
* 1. 抛出异常
* 2. 调用break() 引入 scala.util.control.Breaks
* continue替代方案
* 1. 使用if语句
*
* try catch 自己处理异常
* 语法
* try {
* 可能出现异常的代码
* } catch(异常类名A e){
* 如果出现了异常类A类型的异常,那么执行该代码
* } ...(catch可以有多个)
* finally {
* 最终肯定必须要执行的代码(例如释放资源的代码)
* }
* 代码执行的顺序
* 1.try内的代码从出现异常的那一行开始,中断执行
* 2.执行对应的catch块内的代码
* 3.继续执行try catch结构之后的代码
*
* */
代码示例
import scala.util.control.Breaks import scala.util.control.Breaks.{break, breakable} /** * @author gaocun * @create 2021-10-17 5:54 PM */ object 循环中断_05 { /* 循环中断 break、continue * 说明 * 1. scala 去掉了break、continue * break替代方案 * 1. 抛出异常 * 2. 调用break() 引入 scala.util.control.Breaks * continue替代方案 * 1. 使用if语句 * * try catch 自己处理异常 * 语法 * try { * 可能出现异常的代码 * } catch(异常类名A e){ * 如果出现了异常类A类型的异常,那么执行该代码 * } ...(catch可以有多个) * finally { * 最终肯定必须要执行的代码(例如释放资源的代码) * } * 代码执行的顺序 * 1.try内的代码从出现异常的那一行开始,中断执行 * 2.执行对应的catch块内的代码 * 3.继续执行try catch结构之后的代码 * * * */ def main(args: Array[String]): Unit = { // 1. 抛出异常 替代break try { for (i <- 1 to 10) { printf("break-%d\n", i) if (i == 5) { //break print("执行break\n") throw new RuntimeException } } } catch { case e => } println("正常结束循环") // 2. 采用scala自带函数,退出循环 Breaks.breakable( for (i <- 1 to 10) { printf("break1-%d\n", i) if (i == 5) { //break print("执行break1\n") Breaks.break() } } ) println("正常结束循环") // 3. 省略break breakable { for (i <- 1 to 10) { printf("break2-%d\n", i) if (i == 5) { //break print("执行break2\n") break } } } println("正常结束循环") println("====if 替代continue=============") for (i <- 1 to 10) { if (i % 2 == 0) { println("执行continue") println(i) } } } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界