91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Scala中怎么中斷循環

發布時間:2023-05-05 14:57:29 來源:億速云 閱讀:131 作者:iii 欄目:開發技術

本篇內容主要講解“Scala中怎么中斷循環”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Scala中怎么中斷循環”吧!

1.使用拋出和捕獲異常的方法跳出當前循環

def main(args: Array[String]): Unit = {
    try {
      for (i <- 0 until 5) {
        if (i == 3)
          throw new RuntimeException
        println(i)
      }
    } catch {
      case e: Exception =>
    }
    println("這是循環外的代碼")

2.使用Scala中的Breaks類的break方法

首先引入Breaks類,調用該類下的breakable方法(表示接下來的代碼是可中斷的),在需要中斷的地方調用該類下的break方法即可跳出當前循環

import scala.util.control.Breaks
object Test_Break {
  def main(args: Array[String]): Unit = {
    try {
      for (i <- 0 until 5) {
        if (i == 3)
          throw new RuntimeException
        println(i)
      }
    } catch {
      case e: Exception =>
    }
    println("這是循環外的代碼")
    //使用Scala中的Breaks類中的break方法
    Breaks.breakable(
      for (i <- 0 until 5) {
        if (i == 3) {
          Breaks.break()
        }
        println(i)
      }
    )
  }
}

這里解釋下,Breaks類下的breakable方法其實就是將 try catch 進行了包裝,而該類下的break方法其實就是拋出了一個 breakException (返回類型Nothing),也就是說這里同樣是使用拋出異常的方法實現了跳出循環的這樣一個功能

3.測試

可見都是當 i == 3 時中斷了循環

Scala中怎么中斷循環

4.簡化

使用 ._ 來引入全部內容 方便調用

我們可以使用 import scala.util.control.Breaks._

(其實就是加上了 ._ 類似于Java中的 .* )引入Break類中的所有屬性和方法

這樣接下來調用其中的方法就不用再 . 了

package chapter02
import scala.util.control.Breaks._
object Test_Break {
  def main(args: Array[String]): Unit = {
    try {
      for (i <- 0 until 5) {
        if (i == 3)
          throw new RuntimeException
        println(i)
      }
    } catch {
      case e: Exception =>
    }
    println("這是循環外的代碼")
    //使用Scala中的Breaks類中的break方法
    breakable(
      for (i <- 0 until 5) {
        if (i == 3) {
          break()
        }
        println(i)
      }
    )
  }
}

到此,相信大家對“Scala中怎么中斷循環”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

永安市| 汉阴县| 中超| 南陵县| 乐业县| 萍乡市| 东至县| 吉安市| 特克斯县| 获嘉县| 武功县| 南宁市| 宽城| 介休市| 类乌齐县| 辽源市| 清新县| 陇西县| 石景山区| 遵化市| 集安市| 中宁县| 乐清市| 双流县| 灌南县| 涞水县| 南木林县| 龙山县| 昆山市| 稻城县| 望江县| 青冈县| 涿鹿县| 东兰县| 哈巴河县| 桂平市| 两当县| 冀州市| 微山县| 玉溪市| 聂拉木县|