Percabangan adalah suatu pilihan atau opsi dengan
kondisi tertentu. Jika kondisi yang menjadi syarat terpenuhi, maka opsi
atau pilihan dijalankan, jika tidak maka sebaliknya. Dalam java terdapat 4
macam jenis percabangan, if, if-else, else-if, dan juga switch. Keempat jenis
ini memiliki penggunaan masing-masing. Berikut penjelasan mengenai penggunaan
tiap-tiap percabangan:
- if : Percabangan if ini digunakan jika kita hanya memiliki satu pernyaatan yang akan dijalankan dengan syarat tertentu. Jika kondisi benar, maka pernyataan akan dijalankan.2. if else : Percabangan if else digunakan saat kita memiliki dua pernyataan dengan syarat tertentu. Jika hasil dari if benar, maka pernyataan1 yang dijalankan, sedangkan jika salah, pernyataan dua yang akan dijalankan.3. else -if : percabangan yang digunakan saat kita memiliki banyak kondisi (lebih dari 2) dan banyak pernyataan (lebih dari 2). jika kondisi1 benar, maka pernyataan1 akan dijalankan, jika kondisi2 benar, maka penyataan2 akan dijalankan, jika semua kondisi salah, maka penyataan4 yang akan dijalankan saja.4. switch-case : percabangan yang digunakan saat kita memiliki banyak kondisi (lebih dari 2) dan banyak pernyataan (ledbih dari 2). Sebenarnya switch-case ini hampir sama dengan else if. Jika nilai variabel yang ditunjuk bernilai sesuai nilai1, maka pernyataan1 akan dijalankan, jika nilai variabel yang ditunjuk bernilai sesuai nilai2, pernyataan2 dijalankan, jika tidak ,maka pernyataan3 yang akan dijalankan.
Contoh kasus 1 :
TesKeputusan.
class TesKeputusan{
public static void main (String[] args){
char jeniskelamin = 'W';
//nested if
if (jeniskelamin=='L')
System.out.println("Cowok");
else if (jeniskelamin=='P')
System.out.println("Cewek");
else
System.out.println("Banci");
//ternary
System.out.println(jeniskelamin=='P'? "Dia pasti cowok." : "Dia pasti cewek");
//switch case
switch (jeniskelamin) {
case 'P' : System.out.println("Cowok");
break;
case 'L' : System.out.println("Cewek");
break;
default : System.out.println("Banci");
break;
}
}
}
public static void main (String[] args){
char jeniskelamin = 'W';
//nested if
if (jeniskelamin=='L')
System.out.println("Cowok");
else if (jeniskelamin=='P')
System.out.println("Cewek");
else
System.out.println("Banci");
//ternary
System.out.println(jeniskelamin=='P'? "Dia pasti cowok." : "Dia pasti cewek");
//switch case
switch (jeniskelamin) {
case 'P' : System.out.println("Cowok");
break;
case 'L' : System.out.println("Cewek");
break;
default : System.out.println("Banci");
break;
}
}
}
Keterangan :
Dalam kasus ini, terdapat 4 jenis percabangan sekaligus. Untuk
pernyataan yang pertama, menggunakan percabangan if, dimana atribut yang
dideklarasikan adalah jeniskelamin dengan type data char dan bernilai
'W'.
- //nested if
if (jeniskelamin=='L')
System.out.println("Cowok");
else if (jeniskelamin=='P')
System.out.println("Cewek");
else
System.out.println("Banci");
if (jeniskelamin=='L')
System.out.println("Cowok");
else if (jeniskelamin=='P')
System.out.println("Cewek");
else
System.out.println("Banci");
Jika jeniskelamin = 'L', maka pernyataan yang dikondisikan bernilai salah, karena pada pendeklarasian atribut, jeniskelamin bernilai ='W', maka dibaca kondisi yang kedua. Dan, pada kondisi yang kedua (jeniskelamin = 'P') bernilai salah, maka akan dibaca kondisi yang ketiga ('Banci'). maka akan dihasilkan kondisi yang ketiga (jeniskelamin = banci).
- //ternary
System.out.println(jeniskelamin=='P'? "Dia pasti cowok." : "Dia pasti cewek");
System.out.println(jeniskelamin=='P'? "Dia pasti cowok." : "Dia pasti cewek");
yang akan dicetak hasilnya hanya kondisi ke dua ("Dia pasti cewek"), karena kondisi yang pertama bernilai salah. Mengapa? karena pada pernyataan if, yang jeniskelamin bernilai 'P', hanya = "Cewek", bukan "Cowok". Ketika dilakukan pengkondisian yang pertama bernilai salah, maka yang dibaca pada kondisi kedua. maka hasilnya : "Dia pasti cewek".
- //switch case
switch (jeniskelamin) {
case 'P' : System.out.println("Cowok");
break;
case 'L' : System.out.println("Cewek");
break;
default : System.out.println("Banci");
break;
switch (jeniskelamin) {
case 'P' : System.out.println("Cowok");
break;
case 'L' : System.out.println("Cewek");
break;
default : System.out.println("Banci");
break;
pernyataan ini sama dengan pernyataan if, kondisi yang dibaca hanya
kondisi yang bernilai salah, jika kondisi pertama dan kedua salah maka
yang akan dihasilkan adalah kondisi yang ketiga. Hasilnya adalah : "Banci".
Gambar.1.
PERCABANGAN
Terdapat beberapa jenis perulangan pada Java, yaitu :
•
for
Menyediakan sarana mengulang kode dalam jumlah yang tertentu. Pengulangan ini terstruktur untuk mengulangi kode sampai tercapai batas tertentu.• while
Pengulangan while mempunyai kondisi yang menngendalikan pernyataan perulangan• do-while
Perulangan do while serupa dengan perulangan while, hanya saja pemeriksaan kondisi yang dilakukan adalah setelah pernyataan.
Contoh kasus 2 :
TesPerulangan.
public class TesPerulangan{
public static void main (String[] args){
int i;
//for
System.out.println("Perulangan For ...");
for (i=0; i<10; i++)
System.out.println("Perulangan ke : "+i);
//while
System.out.println("Perulangan While ...");
i=0;
while (i<10) {
System.out.println("Perulangan ke : "+i);
i++;
}
//do while
System.out.println("Perulangan Do While ...");
i=0;
do {
System.out.println("Perulangan ke : "+i);
i++;
}
while (i<10);
}
}
Keterangan :
Hasil dari kode diatas sama, bedanya hanya penempatan proses perulangan saja.
untuk perulangan For dan While, proses perulangan dilakukan diawal. Dan untuk perulangan Do While, proses perulangan dilakukan diakhir.
- //for
System.out.println("Perulangan For ...");
for (i=0; i<10; i++) = proses perulangan, jika nilai i < 10, maka kondisi akan melakukan perulangan hingga nilai yang dikondisikan lebih besar atau sama dengan 10.
System.out.println("Perulangan ke : "+i); = cetak hasil nilai i
- //while
System.out.println("Perulangan While ...");
i=0;
while (i<10) { = proses perulangan ini sama dengan proses perulangan for., hanya syntac nya saja yang berbeda.
System.out.println("Perulangan While ...");
i=0;
while (i<10) { = proses perulangan ini sama dengan proses perulangan for., hanya syntac nya saja yang berbeda.
System.out.println("Perulangan ke : "+i);
i++;
}
i++;
}
-
//do while
System.out.println("Perulangan Do While ...");
i=0;
do {
System.out.println("Perulangan ke : "+i);
i++;
}
while (i<10); = proses nya juga sama, nilai i akan diulang selama i < 10, nilai i akan berhenti jika i>10 atau i=10.
}
}
//do while
System.out.println("Perulangan Do While ...");
i=0;
do {
System.out.println("Perulangan ke : "+i);
i++;
}
while (i<10); = proses nya juga sama, nilai i akan diulang selama i < 10, nilai i akan berhenti jika i>10 atau i=10.
}
}
Gambar.2.