Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Exécute une série d’instructions tant qu’une condition donnée est True
.
Syntaxe
While condition
[ statements ]
[ Continue While ]
[ statements ]
[ Exit While ]
[ statements ]
End While
Pièces
Terme | Définition |
---|---|
condition |
Obligatoire.
Boolean expression. Si condition c’est Nothing le cas, Visual Basic le traite comme False . |
statements |
Optionnel. Une ou plusieurs instructions suivantes While , qui s’exécutent chaque fois condition est True . |
Continue While |
Optionnel. Transfère le contrôle à l’itération suivante du While bloc. |
Exit While |
Optionnel. Transfère le contrôle hors du While bloc. |
End While |
Obligatoire. Termine la définition du While bloc. |
Remarques
Utilisez une While...End While
structure lorsque vous souhaitez répéter un ensemble d’instructions un nombre indéfini de fois, tant qu’une condition reste True
. Si vous souhaitez plus de flexibilité avec l’endroit où vous testez la condition ou le résultat pour lequel vous le testez, vous préférerez peut-être le Do... Instruction de boucle. Si vous souhaitez répéter les instructions un nombre défini de fois, le For... L’instruction suivante est généralement un meilleur choix.
Remarque
Le While
mot clé est également utilisé dans le Do... Instruction loop, la clause Skip While et la clause Take While.
Si condition
c’est True
le cas, toutes les statements
exécutions jusqu’à ce que l’instruction End While
soit rencontrée. Le contrôle retourne ensuite à l’instruction While
, puis condition
est à nouveau vérifié. Si condition
c’est toujours True
le cas, le processus est répété. Si c’est False
le cas, le contrôle passe à l’instruction qui suit l’instruction End While
.
L’instruction While
vérifie toujours la condition avant de démarrer la boucle. Le bouclage se poursuit pendant que la condition reste True
. Si condition
c’est False
le moment où vous entrez la boucle pour la première fois, elle ne s’exécute pas une seule fois.
Les condition
résultats généralement d’une comparaison de deux valeurs, mais il peut s’agir d’une expression qui prend la valeur d’un type de données booléen (True
ou False
). Cette expression peut inclure une valeur d’un autre type de données, tel qu’un type numérique, qui a été converti en Boolean
.
Vous pouvez imbriquer While
des boucles en plaçant une boucle dans une autre. Vous pouvez également imbriquer différents types de structures de contrôle entre elles. Pour plus d’informations, consultez Structures de contrôle imbriquées.
Quitter alors que
L’instruction Exit While peut fournir un autre moyen de quitter une While
boucle.
Exit While
transfère immédiatement le contrôle à l’instruction qui suit l’instruction End While
.
Vous utilisez Exit While
généralement une fois que certaines conditions sont évaluées (par exemple, dans une If...Then...Else
structure). Vous pouvez quitter une boucle si vous détectez une condition qui rend inutile ou impossible de continuer l’itération, telle qu’une valeur erronée ou une demande d’arrêt. Vous pouvez utiliser Exit While
quand vous testez une condition qui peut provoquer une boucle infinie, qui est une boucle qui peut exécuter un nombre extrêmement élevé ou même infini de fois. Vous pouvez ensuite utiliser Exit While
pour échapper à la boucle.
Vous pouvez placer n’importe quel nombre d’instructions n’importe Exit While
où dans la While
boucle.
Lorsqu’elles sont utilisées dans des boucles imbriquées While
, Exit While
transfère le contrôle hors de la boucle la plus interne et dans le niveau supérieur suivant d’imbrication.
L’instruction Continue While
transfère immédiatement le contrôle à l’itération suivante de la boucle. Pour en savoir plus, consultez Instruction Continue.
Exemple 1
Dans l’exemple suivant, les instructions de la boucle continuent à s’exécuter jusqu’à ce que la index
variable soit supérieure à 10.
Dim index As Integer = 0
While index <= 10
Debug.Write(index.ToString & " ")
index += 1
End While
Debug.WriteLine("")
' Output: 0 1 2 3 4 5 6 7 8 9 10
Exemple 2
L’exemple suivant illustre l’utilisation des instructions Continue While
et Exit While
.
Dim index As Integer = 0
While index < 100000
index += 1
' If index is between 5 and 7, continue
' with the next iteration.
If index >= 5 And index <= 8 Then
Continue While
End If
' Display the index.
Debug.Write(index.ToString & " ")
' If index is 10, exit the loop.
If index = 10 Then
Exit While
End If
End While
Debug.WriteLine("")
' Output: 1 2 3 4 9 10
Exemple 3
L’exemple suivant lit toutes les lignes d’un fichier texte. La OpenText méthode ouvre le fichier et retourne un StreamReader qui lit les caractères. Dans la While
condition, la Peek méthode du StreamReader
fichier détermine si le fichier contient des caractères supplémentaires.
Private Sub ShowText(ByVal textFilePath As String)
If System.IO.File.Exists(textFilePath) = False Then
Debug.WriteLine("File Not Found: " & textFilePath)
Else
Dim sr As System.IO.StreamReader = System.IO.File.OpenText(textFilePath)
While sr.Peek() >= 0
Debug.WriteLine(sr.ReadLine())
End While
sr.Close()
End If
End Sub