scala中跳出循環的3種方法


1、scala中跳出循環語句的3種方法

  1)基於Boolean類型的控制變量

 1 // while循環
 2 
 3 var flag = true
 4 var result = 0
 5 var n = 0
 6 
 7 while(flag) {
 8   res += n
 9   n += 1
10   println("res = "+ res)
11   println("n = "+ n)
12   if (n == 10) {
13     flag = false
14   }
15 }

 

 1 // for循環
 2 
 3 var flag = true
 4 var res = 0
 5 
 6 for (i <- 0 until 10 if flag) {
 7   res += i
 8   println("res = " + res )
 9   if (i == 5) flag = false
10 }

  2)使用嵌套函數以及return

 1 /**
 2     * 1 + 2 + 3 + 4
 3     *
 4     * @return
 5     */
 6   def addOuter() = {
 7     var res = 0
 8     def addInner() {
 9       for (i <- 0 until 10) {
10         if (i == 5) {
11           return
12         }
13         res += i
14         println("res = " + res)
15       }
16     }
17     addInner()
18     res
19   }
20 
21   def main(args: Array[String]): Unit = {
22     addOuter()
23   }

  3)使用Breaks類的break方法

def main(args: Array[String]): Unit = {
    // 需要導入這個包
    import scala.util.control.Breaks._
    var res = 0
    breakable {
      for (i <- 0 until 10) {
        if (i == 5) {
          break
        }
        res += i
      }
    }
    println("res = " + res)
  }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM