Teilen über


Schleifen: while... Do Expression

Der while...do Ausdruck wird verwendet, um iterative Ausführung (Schleifen) auszuführen, während eine angegebene Testbedingung wahr ist.

Syntax

while test-expression do
    body-expression

Bemerkungen

Der Testausdruck wird ausgewertet; Wenn dies der Ausdruck ist true, wird der Textkörper ausgeführt, und der Testausdruck wird erneut ausgewertet. Der Textkörperausdruck muss typ sein unit. Wenn der Testausdruck lautet false, 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, deren Letzte 10 ist.

13 19 8 18 16 2 10
Found a 10!

Hinweis

Sie können in Sequenzausdrücken und anderen Berechnungsausdrücken verwenden while...do , in diesem Fall wird eine angepasste Version des while...do Ausdrucks verwendet. Weitere Informationen finden Sie unter Sequenzen, Asynchrone Ausdrücke, Aufgabenausdrücke und Berechnungsausdrücke.

Siehe auch