Teilen über


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.

Weitere Informationen