Condividi tramite


Informazioni su Do

DESCRIZIONE BREVE

Esegue un elenco di istruzioni una o più volte, soggetto a una condizione While o Until.

DESCRIZIONE LUNGA

La parola chiave Do funziona con la parola chiave While o la parola chiave Until per eseguire le istruzioni in un blocco di script, soggetto a una condizione. A differenza del ciclo While correlato, il blocco di script in un ciclo Do viene sempre eseguito almeno una volta.

Un ciclo Do-While è una varietà del ciclo While. In un ciclo Do-While la condizione viene valutata dopo l'esecuzione del blocco di script. Come in un ciclo While, il blocco di script viene ripetuto fino a quando la condizione restituisce true.

Come un ciclo Do-While , un ciclo Do-Until viene sempre eseguito almeno una volta prima della valutazione della condizione. Tuttavia, il blocco di script viene eseguito solo mentre la condizione è false.

Le parole chiave continua e interruzione del controllo del flusso possono essere usate in un ciclo Do-While o in un ciclo Do-Until .

Sintassi

Di seguito viene illustrata la sintassi dell'istruzione Do-While :

do {<statement list>} while (<condition>)

Di seguito viene illustrata la sintassi dell'istruzione Do-Until :

do {<statement list>} until (<condition>)

L'elenco di istruzioni contiene una o più istruzioni eseguite ogni volta che il ciclo viene immesso o ripetuto.

La parte della condizione dell'istruzione viene risolta su true o false.

Esempio

L'esempio seguente di un'istruzione Do conta gli elementi in una matrice finché non raggiunge un elemento con un valore 0.

C:\PS> $x = 1,2,78,0
C:\PS> do { $count++; $a++; } while ($x[$a] -ne 0)
C:\PS> $count
3

Nell'esempio seguente viene usata la parola chiave Until. Si noti che l'operatore non uguale a (-ne) viene sostituito dall'operatore uguale a (-eq).

C:\PS> $x = 1,2,78,0
C:\PS> do { $count++; $a++; } until ($x[$a] -eq 0)
C:\PS> $count
3

Nell'esempio seguente vengono scritti tutti i valori di una matrice, ignorando qualsiasi valore minore di zero.

do {
  if ($x[$a] -lt 0) { continue }
  Write-Host $x[$a]
}
while (++$a -lt 10)

VEDERE ANCHE

about_While

about_Operators

about_Assignment_Operators

about_Comparison_Operators

about_Break

about_Continue