Bagikan melalui


Ekspresi Boolean (Visual Basic)

Ekspresi Boolean adalah ekspresi yang mengevaluasi ke nilai Jenis Data Boolean: True atau False. Ekspresi Boolean dapat memiliki beberapa bentuk. Yang paling sederhana adalah perbandingan langsung dari nilai variabel Boolean dengan Boolean harfiah, seperti yang ditunjukkan dalam contoh berikut.

If newCustomer = True Then
    ' Insert code to execute if newCustomer = True.
Else
    ' Insert code to execute if newCustomer = False.
End If

Dua Arti dari = Operator

Perhatikan bahwa pernyataan penugasan newCustomer = True terlihat sama dengan ekspresi dalam contoh sebelumnya, tetapi ia melakukan fungsi yang berbeda dan digunakan secara berbeda. Dalam contoh sebelumnya, ekspresi newCustomer = True mewakili nilai Boolean, dan tanda = ditafsirkan sebagai operator perbandingan. Dalam pernyataan yang berdiri sendiri, tanda = ditafsirkan sebagai operator penugasan dan menetapkan nilai di sebelah kanan ke variabel di sebelah kiri. Contoh berikut mengilustrasikan langkah-langkah ini:

If newCustomer = True Then
    newCustomer = False
End If

Untuk informasi selengkapnya, lihat Perbandingan Nilai dan Pernyataan.

Operator perbandingan

Operator perbandingan seperti =, <, >, <>, <=, dan >= menghasilkan ekspresi Boolean dengan membandingkan ekspresi di sisi kiri operator dengan ekspresi di sisi kanan operator dan mengevaluasi hasilnya sebagai True atau False. Contoh berikut mengilustrasikan langkah-langkah ini:

42 < 81

Karena 42 kurang dari 81, ekspresi Boolean dalam contoh sebelumnya mengevaluasi True. Untuk informasi selengkapnya tentang ekspresi semacam ini, lihat Perbandingan Nilai.

Operator Perbandingan Dikombinasikan dengan Operator Logis

Ekspresi perbandingan dapat dikombinasikan menggunakan operator logis untuk menghasilkan ekspresi Boolean yang lebih kompleks. Contoh berikut menunjukkan penggunaan operator perbandingan bersama dengan operator logis.

x > y And x < 1000

Dalam contoh sebelumnya, nilai keseluruhan ekspresi bergantung pada nilai ekspresi pada setiap sisi dari operator And. Jika kedua ekspresi adalah True, maka keseluruhan ekspresi mengevaluasi True. Jika salah satu ekspresi adalah False, maka seluruh ekspresi mengevaluasi False.

Operator Korsleting

Operator logis AndAlso dan perilaku ekshibisi OrElse dikenal sebagai korsleting. Operator korsleting mengevaluasi operand kiri terlebih dahulu. Jika operand kiri menentukan nilai seluruh ekspresi, maka eksekusi program berlanjut tanpa mengevaluasi ekspresi kanan. Contoh berikut mengilustrasikan langkah-langkah ini:

If 45 < 12 AndAlso testFunction(3) = 81 Then
    ' Add code to continue execution.
End If

Dalam contoh sebelumnya, operator mengevaluasi ekspresi kiri, 45 < 12. Karena ekspresi kiri mengevaluasi False, seluruh ekspresi logis harus mengevaluasi False. Eksekusi program dengan demikian melewati eksekusi kode di dalam blok If tanpa mengevaluasi ekspresi kanan, testFunction(3). Contoh ini tidak memanggil testFunction() karena ekspresi kiri memalsukan seluruh ekspresi.

Demikian pula, jika ekspresi kiri dalam ekspresi logis yang menggunakan OrElse mengevaluasi True, eksekusi berlanjut ke baris kode berikutnya tanpa mengevaluasi ekspresi kanan, karena ekspresi kiri telah memvalidasi seluruh ekspresi.

Perbandingan dengan Operator Non-Korsleting

Sebaliknya, kedua sisi operator logis dievaluasi saat operator logis And dan Or digunakan. Contoh berikut mengilustrasikan langkah-langkah ini:

If 45 < 12 And testFunction(3) = 81 Then
    ' Add code to continue execution.
End If

Contoh sebelumnya memanggil testFunction() meski ekspresi kiri mengevaluasi False.

Ekspresi Tanda Kurung

Anda dapat menggunakan tanda kurung untuk mengontrol urutan evaluasi ekspresi Boolean. Ekspresi yang diapit oleh tanda kurung dievaluasi terlebih dahulu. Untuk beberapa tingkat sarang, prioritas diberikan ke ekspresi yang bersarang paling dalam. Dalam tanda kurung, evaluasi berlanjut sesuai dengan aturan prioritas operator. Untuk informasi selengkapnya, lihat Prioritas Operator di Visual Basic.

Lihat juga