about_For

Deskripsi singkat

Menjelaskan perintah bahasa yang dapat Anda gunakan untuk menjalankan pernyataan berdasarkan pengujian kondisional.

Deskripsi panjang

Pernyataan For (juga dikenal sebagai perulangan For ) adalah konstruksi bahasa yang dapat Anda gunakan untuk membuat perulangan yang menjalankan perintah dalam blok perintah sementara kondisi yang ditentukan mengevaluasi ke $true.

Penggunaan umum perulangan For adalah untuk mengulangi array nilai dan untuk beroperasi pada subset nilai-nilai ini. Dalam kebanyakan kasus, jika Anda ingin melakukan iterasi semua nilai dalam array, pertimbangkan untuk menggunakan Foreach pernyataan .

Sintaks

Berikut ini menunjukkan For sintaks pernyataan.

for (<Init>; <Condition>; <Repeat>)
{
    <Statement list>
}

Tempat penampung Init mewakili satu atau beberapa perintah yang dijalankan sebelum perulangan dimulai. Anda biasanya menggunakan bagian Init dari pernyataan untuk membuat dan menginisialisasi variabel dengan nilai awal.

Variabel ini kemudian akan menjadi dasar untuk kondisi yang akan diuji di bagian berikutnya dari For pernyataan.

Tempat penampung Kondisi mewakili bagian dari For pernyataan yang diselesaikan ke $true nilai atau $falseBoolean . PowerShell mengevaluasi kondisi setiap kali perulangan For berjalan. Jika pernyataannya adalah $true, perintah dalam blok perintah dijalankan, dan pernyataan dievaluasi lagi. Jika kondisi masih $true, perintah dalam daftar Pernyataan berjalan lagi. Perulangan diulang sampai kondisi menjadi $false.

Tempat penampung Ulangi mewakili satu atau beberapa perintah, dipisahkan oleh koma, yang dijalankan setiap kali perulangan berulang. Biasanya, ini digunakan untuk memodifikasi variabel yang diuji di dalam bagian Kondisi dari pernyataan .

Tempat penampung daftar Pernyataan mewakili sekumpulan satu atau beberapa perintah yang dijalankan setiap kali perulangan dimasukkan atau diulang. Isi daftar Pernyataan dikelilingi oleh kurung kurawal.

Dukungan untuk beberapa operasi

Sintaks berikut didukung untuk beberapa operasi penetapan dalam pernyataan Init :

# Comma separated assignment expressions enclosed in parenthesis.
for (($i = 0), ($j = 0); $i -lt 10; $i++)
{
    "`$i:$i"
    "`$j:$j"
}

# Sub-expression using the semicolon to separate statements.
for ($($i = 0;$j = 0); $i -lt 10; $i++)
{
    "`$i:$i"
    "`$j:$j"
}

Sintaks berikut didukung untuk beberapa operasi penetapan dalam pernyataan Ulangi :

# Comma separated assignment expressions.
for (($i = 0), ($j = 0); $i -lt 10; $i++, $j++)
{
    "`$i:$i"
    "`$j:$j"
}

# Comma separated assignment expressions enclosed in parenthesis.
for (($i = 0), ($j = 0); $i -lt 10; ($i++), ($j++))
{
    "`$i:$i"
    "`$j:$j"
}

# Sub-expression using the semicolon to separate statements.
for ($($i = 0;$j = 0); $i -lt 10; $($i++;$j++))
{
    "`$i:$i"
    "`$j:$j"
}

Catatan

Operasi selain kenaikan pra atau pasca mungkin tidak berfungsi dengan semua sintaks.

Untuk beberapa Kondisi , gunakan operator logis seperti yang ditunjukkan oleh contoh berikut.

for (($i = 0), ($j = 0); $i -lt 10 -and $j -lt 10; $i++,$j++)
{
    "`$i:$i"
    "`$j:$j"
}

Untuk informasi selengkapnya, lihat about_Logical_Operators.

Contoh

Minimal, pernyataan For memerlukan tanda kurung di sekitar bagian Init, Condition, dan Repeat dari pernyataan dan perintah yang dikelilingi oleh tanda kurung kurawal di bagian daftar Pernyataan dari pernyataan.

Perhatikan bahwa contoh mendatang sengaja menampilkan kode di luar For pernyataan. Dalam contoh selanjutnya, kode diintegrasikan ke For dalam pernyataan .

Misalnya, pernyataan berikut For terus menampilkan nilai $i variabel hingga Anda mengeluarkan perintah secara manual dengan menekan CTRL+C.

$i = 1
for (;;)
{
    Write-Host $i
}

Anda dapat menambahkan perintah tambahan ke daftar pernyataan sehingga nilai $i ditambahkan sebesar 1 setiap kali perulangan dijalankan, seperti yang ditunjukkan contoh berikut.

for (;;)
{
    $i++; Write-Host $i
}

Hingga Anda keluar dari perintah dengan menekan CTRL+C, pernyataan ini akan terus menampilkan nilai $i variabel karena bertambah 1 setiap kali perulangan dijalankan.

Daripada mengubah nilai variabel dalam daftar pernyataan bagian dari For pernyataan, Anda dapat menggunakan bagian Ulangi dari For pernyataan sebagai gantinya, sebagai berikut.

$i=1
for (;;$i++)
{
    Write-Host $i
}

Pernyataan ini masih akan berulang tanpa batas waktu sampai Anda keluar dari perintah dengan menekan CTRL+C.

Anda dapat mengakhiri perulangan For menggunakan kondisi. Anda dapat menempatkan kondisi menggunakan bagian Kondisi dari For pernyataan. Perulangan For berakhir ketika kondisi mengevaluasi ke $false.

Dalam contoh berikut, perulangan For berjalan sementara nilai kurang dari $i atau sama dengan 10.

$i=1
for(;$i -le 10;$i++)
{
    Write-Host $i
}

Alih-alih membuat dan menginisialisasi variabel di luar For pernyataan, Anda dapat melakukan tugas ini di dalam perulangan For dengan menggunakan bagian Init dari For pernyataan .

for($i=1; $i -le 10; $i++){Write-Host $i}

Anda dapat menggunakan pengembalian pengangkutan alih-alih titik koma untuk memisahkan bagian ForInit, Kondisi, dan Ulangi pernyataan. Contoh berikut menunjukkan For yang menggunakan sintaks alternatif ini.

for ($i = 0
  $i -lt 10
  $i++){
  $i
}

Bentuk For alternatif pernyataan ini berfungsi dalam file skrip PowerShell dan di prompt perintah PowerShell. Namun, lebih mudah untuk menggunakan For sintaks pernyataan dengan titik koma saat Anda memasukkan perintah interaktif pada prompt perintah.

Perulangan For lebih fleksibel daripada perulangan Foreach karena memungkinkan Anda untuk menaikkan nilai dalam array atau koleksi dengan menggunakan pola. Dalam contoh berikut, $i variabel bertambah 2 di bagian Ulangi pernyataan For .

for ($i = 0; $i -le 20; $i += 2)
{
    Write-Host $i
}

Perulangan For juga dapat ditulis pada satu baris seperti dalam contoh berikut.

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

Lihat juga