if (suatu_kondisi) perintah1 else perintah2
perintah1
dan perintah2
bisa berbentuk blok yang terdiri dari beberapa perintah. Pernyataan if
merupakan bentuk percabangan 2 arah. Bagian else
yang terdiri dari kata "else" dan perintah2 tidak selalu harus ada.Perhatikan bahwa baik perintah1 dan perintah2 bisa merupakan pernyataan
if
itu sendiri. Ada beberapa hal menarik yang mungkin berguna. Ambil contoh dalam pernyataan berikutif (x > 0) if (y > 0) System.out.println("perintah1"); else System.out.println("perintah2");
if
tersebut. Java akan menganggap else
terkait dengan if
terdekat, sehingga kode di atas akan dianggap sepertiif (x > 0) if (y > 0) System.out.println("perintah1"); else System.out.println("perintah2");
else
di program di atas akan dianggap bagian dari pernyataan jika y > 0,
padahal yang kita maksud adalah else jika x > 0. Untuk
memperbaikinya, kita tambahkan tanda kurung {} sehingga menjadi if (x > 0) { if (y > 0) System.out.println("perintah1"); } else System.out.println("perintah2");
Lebih menarik lagi, perhatikan kode berikut
if (kondisi_pertama) perintah1 else if (kondisi_kedua) perintah2 else perintah3
if (kondisi_pertama) perintah1 else if (kondisi_kedua) perintah2 else perintah3
perintah1
, perintah2
, atau perintah3
. Komputer akan mengevaluasi kondisi_pertama
, jika true
, maka perintah1
dieksekusi sementara perintah2
dan perintah3
diabaikan. Jika false
, maka kondisi_kedua
akan dievaluasi. Jika true
, maka perintah2
akan dieksekusi dan perintah3
diabaikan. Jika false
, maka hanya perintah3
saja yang dieksekusi.Berikut ini adalah contoh penggunaan percabangan 3 arah.
if (suhu < 20) System.out.println("Dingin"); else if (suhu < 30) System.out.println("Lumayan"); else System.out.println("Panas");
if (kondisi_pertama) perintah1 else if (kondisi_kedua) perintah2 else if (kondisi_ketiga) perintah3 else if (kondisi_keempat) perintah4 . . . else if (kondisi_keNminus1) perintahNmin1 else perintahN
if (a < b && a <c)
if (b < c)
if (b < c)
if (a < c)
Demikian halnya apabila jika b > c, maka kita bisa tentukan urutan bilangannya.
Keseluruhan logika ini, bisa kita tuangkan dalam bentuk :
if (a < b && a < c) { if (b < c) System.out.println(a + " " + b + " " + c); else System.out.println(a + " " + c + " " + b); } else if (b < c) { if (a < c) System.out.println(b + " " + a + " " + c); else System.out.println(b + " " + c + " " + a); } else { if (a < b) System.out.println(c + " " + a + " " + c); else System.out.println(c + " " + b + " " + a); }
Demikian seterusnya jika urutannya b terlebih dahulu baru a. Sehingga kodenya bisa dituliskan dalam bentuk :
if (a < b) { if (c < a) System.out.println(c + " " + a + " " + b); else if (c > b) System.out.println(a + " " + b + " " + c); else System.out.println(a + " " + c + " " + b); } else { if (c < b) System.out.println(c + " " + b + " " + a); else if (c > a) System.out.println(b + " " + a + " " + c); else System.out.println(b + " " + c + " " + a); }
Sumber:http://java.lyracc.com/belajar/java-untuk-pemula/pernyataan-if
0 komentar:
Posting Komentar