Instruction Perl next

Le Perl nextL'instruction démarre la prochaine itération de la boucle. Vous pouvez fournir une LABEL avecnextinstruction où LABEL est l'étiquette d'une boucle. UNEnext L'instruction peut être utilisée dans une boucle imbriquée où elle sera applicable à la boucle la plus proche si aucun LABEL n'est spécifié.

S'il y a un continueblock sur la boucle, il est toujours exécuté juste avant que la condition ne soit sur le point d'être évaluée. Vous verrez l'instruction continue dans un chapitre séparé.

Syntaxe

La syntaxe d'un next l'instruction en Perl est -

next [ LABEL ];

Un LABEL à l'intérieur des accolades indique que LABEL est facultatif et si aucun LABEL n'est spécifié, l'instruction suivante fera passer le contrôle à l'itération suivante de la boucle la plus proche.

Représentation schématique

Exemple

#!/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;
}

Lorsque le code ci-dessus est exécuté, il produit le résultat suivant -

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

Prenons un exemple où nous allons utiliser un LABEL avec l'instruction suivante -

#!/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;
}

Lorsque le code ci-dessus est exécuté, il produit le résultat suivant -

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