Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menjalankan serangkaian pernyataan selama kondisi tertentu adalah True
.
Sintaks
While condition
[ statements ]
[ Continue While ]
[ statements ]
[ Exit While ]
[ statements ]
End While
Generator
Term | Definisi |
---|---|
condition |
Harus diisi. Boolean ekspresi. Jika condition adalah Nothing , Visual Basic memperlakukannya sebagai False . |
statements |
Opsional. Satu atau beberapa pernyataan berikut While , yang berjalan setiap condition adalah True . |
Continue While |
Opsional. Mentransfer kontrol ke perulangan berikutnya dari blok While . |
Exit While |
Opsional. Mentransfer kontrol keluar dari blok While . |
End While |
Harus diisi. Mengakhiri definisi While blok. |
Keterangan
Gunakan struktur While...End While
saat Anda ingin mengulang sekumpulan pernyataan dalam jumlah yang tidak terbatas, selama suatu kondisi tetap True
. Jika Anda menginginkan lebih banyak fleksibilitas dengan tempat Anda menguji kondisi atau hasil apa yang Anda uji, Anda mungkin lebih suka Pernyataan Do...Loop. Jika Anda ingin mengulangi pernyataan beberapa kali, Pernyataan For...Next biasanya merupakan pilihan yang lebih baik.
Catatan
Kata kunci While
juga digunakan dalam Pernyataan Do... Loop, Klausul Skip While dan Klausul Take While.
Jika condition
adalah True
, semua statements
berjalan hingga pernyataan End While
ditemui. Kontrol kemudian kembali ke pernyataan While
, dan condition
kembali diperiksa. Jika condition
masih True
, proses diulang. Jika itu False
, kontrol meneruskan ke pernyataan yang mengikuti pernyataan End While
.
Pernyataan While
selalu memeriksa kondisi sebelum memulai perulangan. Perulangan berlanjut jika kondisi masih True
. Jika condition
adalah False
ketika Anda pertama kali masuk perulangan, itu tidak berjalan satu kali pun.
condition
biasanya dihasilkan dari perbandingan dua nilai, tetapi dapat berupa ekspresi apa pun yang mengevaluasi ke nilai Jenis Data Boolean (True
or False
). Ekspresi ini dapat menyertakan nilai jenis data lain, seperti jenis numerik, yang telah dikonversi ke Boolean
.
Anda dapat menyarangkan perulangan While
dengan menempatkan satu perulangan di dalam perulangan lainnya. Anda juga dapat menyarangkan berbagai jenis struktur kontrol dalam satu sama lain. Untuk informasi selengkapnya, lihat Struktur Kontrol Berlapis.
Exit While (Keluar Jika)
Pernyataan Exit While dapat memberikan cara lain untuk keluar dari perulangan While
. Exit While
segera mentransfer kontrol ke pernyataan yang mengikuti pernyataan End While
.
Anda biasanya menggunakan Exit While
setelah beberapa kondisi dievaluasi (misalnya, dalam struktur If...Then...Else
). Anda mungkin ingin keluar dari perulangan jika Anda mendeteksi kondisi yang membuatnya tidak perlu atau tidak mungkin untuk melanjutkan iterasi, seperti nilai yang salah atau permintaan penghentian. Salah satu penggunaan Exit While
adalah menguji kondisi yang dapat menyebabkan perulangan tanpa akhir, yang merupakan perulangan yang dapat berjalan dalam jumlah besar atau bahkan tak terbatas. Anda dapat menggunakan Exit While
untuk keluar dari perulangan.
Anda dapat menyertakan sejumlah pernyataan Exit While
di mana saja dalam perulangan While
.
Ketika digunakan dalam perulangan While
berlapis, Exit While
mentransfer kontrol keluar dari perulangan terdalam dan ke tingkat bersarang berikutnya yang lebih tinggi.
Pernyataan Continue While
segera mentransfer kontrol ke iterasi perulangan berikutnya. Untuk informasi selengkapnya, lihat Pernyataan Continue.
Contoh 1
Dalam contoh berikut, pernyataan dalam perulangan terus berjalan hingga variabel index
lebih besar dari 10.
Dim index As Integer = 0
While index <= 10
Debug.Write(index.ToString & " ")
index += 1
End While
Debug.WriteLine("")
' Output: 0 1 2 3 4 5 6 7 8 9 10
Contoh 2
Contoh berikut mengilustrasikan penggunaan pernyataan Continue While
dan Exit While
.
Dim index As Integer = 0
While index < 100000
index += 1
' If index is between 5 and 7, continue
' with the next iteration.
If index >= 5 And index <= 8 Then
Continue While
End If
' Display the index.
Debug.Write(index.ToString & " ")
' If index is 10, exit the loop.
If index = 10 Then
Exit While
End If
End While
Debug.WriteLine("")
' Output: 1 2 3 4 9 10
Contoh 3
Contoh berikut membaca semua baris dalam file teks. Metode OpenText membuka file dan mengembalikan StreamReader yang membaca karakter. Dalam kondisi While
, metode Peek dari StreamReader
menentukan apakah file berisi karakter tambahan.
Private Sub ShowText(ByVal textFilePath As String)
If System.IO.File.Exists(textFilePath) = False Then
Debug.WriteLine("File Not Found: " & textFilePath)
Else
Dim sr As System.IO.StreamReader = System.IO.File.OpenText(textFilePath)
While sr.Peek() >= 0
Debug.WriteLine(sr.ReadLine())
End While
sr.Close()
End If
End Sub