ARGOMENTO
about_Do
DESCRIZIONE BREVE
Esegue un elenco di istruzioni una o più volte, in base a una
condizione While o Until.
DESCRIZIONE DETTAGLIATA
La parola chiave Do viene utilizzata con la parola chiave While o
Until per l'esecuzione di istruzioni in un blocco di script, in
base a una condizione. A differenza del relativo ciclo While, 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
finché la condizione restituisce true.
Come il ciclo Do-While, un ciclo Do-Until viene sempre eseguito
almeno una volta prima che venga valutata la condizione.
Tuttavia, il blocco di script viene eseguito solo mentre la
condizione è false.
Le parole chiave di controllo del flusso Continue e Break possono
essere utilizzate in un ciclo Do-While o Do-Until.
Sintassi
Di seguito viene illustrata la sintassi dell'istruzione Do-While:
do {<elenco istruzioni>} while (<condizione>)
Di seguito viene illustrata la sintassi dell'istruzione Do-Until:
do {<elenco istruzioni>} until (<condizione>)
L'elenco di istruzioni contiene una o più istruzioni che
vengono eseguite ogni volta che il ciclo viene immesso o ripetuto.
La parte dell'istruzione relativa alla condizione restituisce i
valori true o false.
Esempio
Nell'esempio seguente di un'istruzione Do vengono contati gli
elementi in una matrice finché non viene raggiunto un elemento
con il 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 utilizzata la parola chiave Until.
Si noti che l'operatore diverso da (-ne) viene sostituito
dall'operatore di uguaglianza (-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