hakeの日記

Windows環境でプログラミングの勉強をしています。

PowerShell - 制御構造(ループ)

for

for($i = 0; $i -lt 5; $i++){
    Write-Host $i
}

0
1
2
3
4

foreach

foreach($i in (0..4)){
    Write-Host $i
}

0
1
2
3
4

while / do while

$i = 0
while($i -lt 5){
    Write-Host $i
    $i++
}

0
1
2
3
4


$i = 0
do {
    Write-Host $i
    $i++
}while($i -lt 5)

0
1
2
3
4

break/continue

for($i = 0; $i -lt 10; $i++){
    if($j -eq 2){break}
    Write-Host $i
}

0
1


for($i = 0; $i -lt 10; $i++){
    if($i -eq 2){continue}
    Write-Host $i
}

0
1
3
4
5
6
7
8
9

多重ループからの脱出

Write-Host "before loop"

:exit_all
for($i = 0; $i -lt 10; $i++){
    for($j = 0; $j -lt 10; $j++){
        Write-Host $i, $j
        if($j -eq 2){break exit_all}
    }
}
Write-Host "after loop"


before loop
0 0
0 1
0 2
after loop

ラベルをforループの下に移動したら、"after loop"が非表示になった。
ラベルが付いている文の次へジャンプするということ?