Latest web development tutorials

istruzione break Scala

ciclo Scala ciclo Scala

Lingua di default Scala è alcuna istruzione break, ma è possibile utilizzare un altro modo dopo la versione 2.8 Scala di raggiungere un'istruzionebreak.Quando si utilizza l'istruzionebreak in un ciclo durante l'esecuzione di questa affermazione, si romperà il ciclo ed eseguire il blocco di codice dopo il ciclo.

grammatica

sintassi Scala di pausa un po 'meno come il seguente formato:

// 导入以下包
import scala.util.control._

// 创建 Breaks 对象
val loop = new Breaks;

// 在 breakable 中循环
loop.breakable{
    // 循环
    for(...){
       ....
       // 循环中断
       loop.break;
   }
}

diagramma di flusso

Esempi

import scala.util.control._

object Test {
   def main(args: Array[String]) {
      var a = 0;
      val numList = List(1,2,3,4,5,6,7,8,9,10);

      val loop = new Breaks;
      loop.breakable {
         for( a <- numList){
            println( "Value of a: " + a );
            if( a == 4 ){
               loop.break;
            }
         }
      }
      println( "After the loop" );
   }
}

Eseguire i risultati di output di codice di cui sopra:

$ scalac Test.scala
$ scala Test
Value of a: 1
Value of a: 2
Value of a: 3
Value of a: 4
After the loop

ciclo di nidificazione di interrupt

L'esempio seguente mostra come rompere cicli annidati:

import scala.util.control._

object Test {
   def main(args: Array[String]) {
      var a = 0;
      var b = 0;
      val numList1 = List(1,2,3,4,5);
      val numList2 = List(11,12,13);

      val outer = new Breaks;
      val inner = new Breaks;

      outer.breakable {
         for( a <- numList1){
            println( "Value of a: " + a );
            inner.breakable {
               for( b <- numList2){
                  println( "Value of b: " + b );
                  if( b == 12 ){
                     inner.break;
                  }
               }
            } // 内嵌循环中断
         }
      } // 外部循环中断
   }
}

Eseguire i risultati di output di codice di cui sopra:

$ scalac Test.scala
$ scala Test
Value of a: 1
Value of b: 11
Value of b: 12
Value of a: 2
Value of b: 11
Value of b: 12
Value of a: 3
Value of b: 11
Value of b: 12
Value of a: 4
Value of b: 11
Value of b: 12
Value of a: 5
Value of b: 11
Value of b: 12

ciclo Scala ciclo Scala