Dichiarazione successiva di Perl

Il Perl nextl'istruzione avvia l'iterazione successiva del ciclo. Puoi fornire un'ETICHETTA connextistruzione dove LABEL è l'etichetta per un ciclo. UNnext l'istruzione può essere utilizzata all'interno di un ciclo annidato dove sarà applicabile al ciclo più vicino se non viene specificata un'ETICHETTA.

Se c'è un continueblocco sul loop, viene sempre eseguito appena prima che la condizione stia per essere valutata. Vedrai la dichiarazione continue in un capitolo separato.

Sintassi

La sintassi di a next dichiarazione in Perl è -

next [ LABEL ];

Un'ETICHETTA all'interno delle parentesi quadre indica che ETICHETTA è facoltativa e se un'ETICHETTA non è specificata, l'istruzione successiva farà passare il controllo all'iterazione successiva del ciclo più vicino.

Diagramma di flusso

Esempio

#!/usr/local/bin/perl

$a = 10;
while( $a < 20 ) {
   if( $a == 15) {
      # skip the iteration.
      $a = $a + 1;
      next;
   }
   print "value of a: $a\n";
   $a = $a + 1;
}

Quando il codice sopra viene eseguito, produce il seguente risultato:

value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 16
value of a: 17
value of a: 18
value of a: 19

Facciamo un esempio in cui useremo un'ETICHETTA insieme all'istruzione successiva:

#!/usr/local/bin/perl

$a = 0;
OUTER: while( $a < 4 ) {
   $b = 0;
   print "value of a: $a\n";
   INNER:while ( $b < 4) {
      if( $a == 2) {
         $a = $a + 1;
         # jump to outer loop
         next OUTER;
      }
      $b = $b + 1;
      print "Value of b : $b\n";
   }
   print "\n";
   $a = $a + 1;
}

Quando il codice sopra viene eseguito, produce il seguente risultato:

value of a : 0
Value of b : 1
Value of b : 2
Value of b : 3
Value of b : 4

value of a : 1
Value of b : 1
Value of b : 2
Value of b : 3
Value of b : 4

value of a : 2
value of a : 3
Value of b : 1
Value of b : 2
Value of b : 3
Value of b : 4