Schleifen: while...do-Ausdruck
Der while...do
-Ausdruck wird verwendet, um iterative Ausführung (Schleifen) auszuführen, während eine bestimmte Testbedingung erfüllt ist.
Syntax
while test-expression do
body-expression
Bemerkungen
Der Testausdruck wird ausgewertet; wenn das Ergebnis true
ist, wird der Textausdruck ausgeführt, und der Testausdruck wird erneut ausgewertet. Der Textausdruck muss den Typ unit
haben. Wenn der Testausdruck false
lautet, endet die Iteration.
Das folgende Beispiel veranschaulicht die Verwendung des while...do
-Ausdrucks.
open System
let lookForValue value maxValue =
let mutable continueLooping = true
let randomNumberGenerator = new Random()
while continueLooping do
// Generate a random number between 1 and maxValue.
let rand = randomNumberGenerator.Next(maxValue)
printf "%d " rand
if rand = value then
printfn "\nFound a %d!" value
continueLooping <- false
lookForValue 10 20
Die Ausgabe des vorherigen Codes ist ein Datenstrom von Zufallszahlen zwischen 1 und 20, von denen die letzte 10 ist.
13 19 8 18 16 2 10
Found a 10!
Hinweis
Sie können while...do
in Sequenzausdrücken und anderen Berechnungsausdrücken verwenden. In diesem Fall wird eine angepasste Version des while...do
-Ausdrucks verwendet. Weitere Informationen finden Sie unter Sequenzen, Asynchrone Ausdrücke, Taskausdrücke und Berechnungsausdrücke.