Pengertian Switch Case
Switch
Case merupakan
sebuah pernyataan atau statement yang
dirancang khusus untuk menangani pengambilan keputusan yang melibatkan banyak
alternatif pilihan. Pernyataan Switch lebih
jarang digunakan dibandingkan dengan pernyataan IF pada
java.Tetapi lebih sering digunakan ketika kita ingin menuliskan percabangan
ataupun pengambilan keputusan dengan sangat banyak pilihan. Maka dari itu switch sangat baik untuk dipelajari.
Bentuk umum dari Switch Case
switch (ekspresi) {
case konstanta1:
statement1
break;
case konstanta2:
statement2
break;
case konstanta3:
statement3
break;
default:
statement-n
}
Pernyataan
switch akan menyeleksi atau mencari sebuah kondisi
yang diberikan dan kemudian akan membandingan hasilnya dengan konstanta yang
berada di dalam case. Pembandingan akan dimulai
dari konstanta1 sampai konstanta akhir. Jika hasil yang
didapatkan sama dengan konstanta3 maka statemen pada
konstanta3 akan diproses. Jika hasil tidak ada yang memenuhi kriteria dari
masing-masing konstanta maka statement yang
berada pada default akan diproses.
Fungsi Break
Break digunakan untuk menghentikan proses
yang terjadi apabila perintah untuk eksekusi telah dilaksanakan. Contohnya,
misalnya hasil yang kita dapatkan akan memproses konstanta1, apabila pada case konstanta1 tidak ada break, maka statement2pada case
konstanta2 sampai case konstanta3 akan ikut di proses.
Maka dari itu apabila menggunakan Switch Case, sangatlah penting
untuk menulis break pada akhir statemen. Kontruksi If-Else yang bertingkat-tingkat seringkali
membingungkan pembacaan alur program. Java menyediakan intruksi Switch untuk
memudahkan pembacaan alur program bercabang yang sangat banyak.
Meskipun Switch didesain untuk
mengganti If-Else, akan tetapi Switch memiliki batasan:
1.Data yang diperiksa haruslah bertipe Integer (int)
atau Karakter (char)
2.Range data yang diperiksa bernilai 0 s/d 255.
Bentuk penulisan perintah ini sebagai berikut :
switch(value)
}
case constanta 1 : statement1;
break;
case constanta 2 : statement 2;
break;
..........etc
default : statement x;
}
Keterangan
· Constanta 1,
constanta 2, dst adalah yang akan dicocokkan dengan isi
value.
· Statement adalah
pernyataan yang akan di kerjakan jika value (bertipe Integer atau
Karakter)cocok dengan salah satu data dari constanta 1 , constanta
2 atau yang lainnya.
· break adalah
perintah untuk mengakhiri statement. Apabila tidak ada break,
komputer akan mengeksekusi intruksi yang berada di bawahnya walaupun berada di
case yang berbeda.
· default, bersifat
optional. dieksekusi jika value tidak cocok dengan salah satu constanta yang
tersedia.
Kesimpulan
Setiap cabang yang akan dijalankan
jika syarat nilai konstanta tersebut dipenuhi dan default akan dijalankan jika
semua cabang diatasnya tidak terpenuhi.
Pernyataan break menunjukan bahwa perintah siap keluar dari switch. Jika
pernyataan ini tidak ada, maka program akan diteruskan kecabang – cabang yang
lainnya.
Contoh Program :
import java.io.InputStreamReader;
import java.io.BufferedReader;
import java.io.IOException;
public class Switch_case{
public static void main
(String[] args){
InputStreamReader input = new InputStreamReader(System.in);
BufferedReader buf = new BufferedReader(input);
try{
System.out.println("Masukkan
Bilangan [1-10] : ");
String strPil = buf.readLine();
Int pil = Integer.parseInt(strPil);
switch(pil){ // pil merupakan variabel
atau ekspresi yg akan diuji
case 1 : // nilai 1 & seterusnya adalah data yang akan di cocokkan
dengan variabel
// statement akan dikerjakan apabila nilai
sesuai dengan variabel
System.out.println("\tSATU");
System.out.println("\nBILANGANGANJIL");
break; // perintah untuk
mengakhiri suatu statement
case2 :
System.out.println("\tDUA");
System.out.println("\nBILANGANGENAP");
break;
case3 :
System.out.println("\tTIGA");
System.out.println("\nBILANGANGANJIL");
break;
case4 :
System.out.println("\tEMPAT");
System.out.println("\nBILANGANGENAP");
break;
case5 :
System.out.println("\tLIMA");
System.out.println("\nBILANGANGANJIL");
break;
case6 :
System.out.println("\tENAM");
System.out.println("\nBILANGANGENAP");
break;
case7 :
System.out.println("\tTUJUH");
System.out.println("\nBILANGANGANJIL");
break;
case8 :
System.out.println("\tDELAPAN");
System.out.println("\nBILANGANGENAP");
break;
case9 :
System.out.println("\tSEMBILAN");
System.out.println("\nBILANGANGANJIL");
break;
case10 :
System.out.println("\tSEPULUH");
System.out.println("\nBILANGANGENAP");
break;
default : //perintah
ini akan dieksekusi apabila variabel yang diinputkan tidak sesuai dengan nilai yang
tersedia
System.out.println("\nAngkaMelebihi10");
}
}
catch(Exceptionex){
System.out.println("System ERROR");
}
}
}
Tidak ada komentar:
Posting Komentar