Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Breve descrição
Executa uma lista de instruções uma ou mais vezes, sujeita a uma while ou until condição.
Descrição longa
A do palavra-chave funciona com a while palavra-chave ou a until palavra-chave para executar as instruções em um bloco de script, sujeito a uma condição. Ao contrário do loop relacionado while , o bloco de script em um do loop sempre é executado pelo menos uma vez.
Um loop Do-While é uma variedade do while loop. Em um loop Do-While , a condição é avaliada após a execução do bloco de script. Como em um loop de while, o bloco de script é repetido desde que a condição seja avaliada como true.
Como um loop Do-While , um loop Do-Until sempre é executado pelo menos uma vez antes que a condição seja avaliada. No entanto, o bloco de script é executado apenas enquanto a condição é falsa.
As continue palavras-chave e break controle de fluxo podem ser usadas em um loop Do-While ou em um loop Do-Till .
Sintaxe
A seguir mostra a sintaxe da instrução Do-While :
do {<statement list>} while (<condition>)
A seguir mostra a sintaxe da instrução Do-Till :
do {<statement list>} until (<condition>)
A lista de instruções contém uma ou mais instruções que são executadas cada vez que o loop é inserido ou repetido.
A parte da condição da instrução resolve para true ou false. Para obter mais informações sobre como os booleanos são avaliados, consulte about_Booleans.
Exemplo
O exemplo a seguir de uma do instrução conta os itens em uma matriz até atingir um item com um valor de 0.
PS> $x = 1,2,78,0
PS> do { $count++; $a++; } while ($x[$a] -ne 0)
PS> $count
3
O exemplo a seguir usa a palavra-chave until . Observe que o não igual ao operador (-ne) é substituído pelo igual ao operador (-eq).
PS> $x = 1,2,78,0
PS> do { $count++; $a++; } until ($x[$a] -eq 0)
PS> $count
3
O exemplo a seguir grava todos os valores de uma matriz, ignorando qualquer valor menor que zero.
do {
if ($x[$a] -lt 0) { continue }
Write-Host $x[$a]
}
while (++$a -lt 10)