SlideShare a Scribd company logo
1 of 4
Jefri Fahrian TI’12 | Page 1 of 4
01.12 Switch Statement
Jefri Fahrian (6)
Dalam pemrograman penggunaan pernyataan percabangan/pemilihan tentu
sangat berguna untuk mengeksekusi suatu perintah yang memiliki syarat/kondisi
tertentu. Salah satu pernyataan untuk melakukan fungsi tersebut adalah switch
statement. Pernyataan ini juga memiliki fungsi alternatif seperti pada pernyataan if
– else (nested if).
Pernyataan Switch
Switch – case merupakan pernyataan yang dirancang khusus untuk
menangani pengambilan keputusan yang melibatkan sejumlah atau banyak
alternatif penyelesaian. Pernyataan switch - case ini memiliki kegunaan sama
seperti if – else bertingkat (nested if). Kontruksi if-else yang bertingkat - tingkat
seringkali membingungkan pembacaan alur program. Java menyediakan
pernyataan switch untuk memudahkan pembacaan alur program bercabang yang
sangat banyak. Meskipun switch didesain untuk menggantii if-else, akan tetapi
switch memiliki batasan berikut :
- Data yang diperiksa haruslah bertipe integer (int) atau character (char)
- Range data yang diperiksa bernilai 0 s/d 255 (Hariyanto, 2003)
Sintaks percabangan switch di Java adalah :
Switch (expression) {
Case constanta1:
Statement1
Case constanta2:
Statement2
Default statement
}
Keterangan :
- constanta1, constanta2, dst adalah kontanta yang akan dicocokkan dengan
isi exspression
- statement adalah pernyataan yang akan dikerjakan jika expression (bertipe
int atau char) cocok dengan salah satu data dari constanta1, constanta2,
dan seterusmya.
Jefri Fahrian TI’12 | Page 2 of 4
- 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 expression tidak cocok dengan
salah satu dari constanta yang tersedia (Hariyanto, 2003)
Contoh program :
1 import java.util.Scanner;
2 public class prodi {
3 public static void main(String args[]) {
4 // Pembuatan objek input untuk menggantikan fungsi scanner
5 Scanner input = new Scanner(System.in);
6
7 // Mendeklarasikan variabel
8 String nama;
9 int pil;
10 // Meminta inputan
11 System.out.print("Masukkan Nama : ");
12 nama= input.next();
13 System.out.print("Pilihan prodi : ");
14 pil= input.nextInt();
15
16 // Pengujian pilihan
17 switch (pil) {
18 case 1:
19 System.out.println("Desain Komunikasi Visual");
20 break;
21 case 2:
22 System.out.println("Desain Produk Industri");
23 break;
24 case 3:
25 System.out.println("Teknik Informatika");
26 break;
27 case 4:
28 System.out.println("Falsafah Agama");
29 break;
30 case 5:
31 System.out.println("Hubungan Internasional");
32 break;
33 case 6:
34 System.out.println("Psikologi");
35 break;
36 case 7:
37 System.out.println("Ilmu Komunikasi");
38 break;
39 case 8:
40 System.out.println("Manajemen");
41 break;
42 //Jika tidak ada ekspresi yang cocok akan dieksekusi
43 default:
44 System.out.println("Pilihan prodi salah !");
45 }
46 }
47 }
Jefri Fahrian TI’12 | Page 3 of 4
Keluaran program :
Masukkan Nama : Jefri Fahrian
Pilihan prodi : 3
Teknik Informatika
Percabangan switch mengevaluasi dan membandingkan expression untuk
semua constanta case dan mengendalikan eksekusi program ke pernyataan case
yang cocok dengan expression. Jika tidak ada expression yang cocok maka
program menuju ke default statement. Pernyataan break adalah opsional, jika kita
meniadakan break, maka eksekusi akan terus dijalankan ke pernyataan case
berikutnya.
Berikut adalah fitur penting pernyataan switch :
1. Pernyataan switch berbeda dengan pernyataan if-else dimana switch hanya
bisa menguji kesamaan tipe ekspresi int/char, sedangkan pernyataan if-
else dapat melakukan evaluasi sembarang tipe ekspresi boolean. Dengan
demikian, switch terlihat seperti hanya mencocokkan di antara nilai – nilai
ekspresi dan constanta case.
2. Tidak ada constanta case di block case yang sama dapat mempunyai nilai
identik. Tentu saja untuk pernyataan switch bersarang (nested switch) yang
diapit switch luar dapat mempunyai kontanta yang sama dengan konstanta
di switch luar.
3. Pernyataan switch biasanya lebih efisien dibanding if-else bersarang yang
dalam.
Dalam mengompilasi pernyataan switch, Java compiler akan melakukan
inspeksi masing – masing constanta case dan menciptakan “jump table” yang
akan digunakan untuk memilih jalur eksekusi bergantung nilai ekspresi. Dengan
demikian, jika kita hendak memilih sekelompok besar nilai maka pernyataan
switch akan berjalan lebih cepat dibanding menggunakan pernyataan else-if.
Kompilator melakukannya dengan mengetahui bahwa semua contanta case
bertipe sama dan cukup membandingkan kesamaan dengan jump table.
(Hariyanto, 2003)
Jefri Fahrian TI’12 | Page 4 of 4
Daftar Pustaka
Bloch, J. (2001). Effective Java: Programming Language Guide. Massachusetts:
Addison Wesley.
Bracha, G. (2004). Generics in the Java Programming Language.
Hariyanto, B. (2003). Esensi - Esensi bahasa pemrograman Java. Bandung:
Penerbit Informatika.
Harold, E. R. (1999). Java I/O. O'Reilly.
McLaughlin, B. (2002). Building Java™ Enterprise Applications Volume I:
Architecture. O'Reilly.

More Related Content

What's hot

Algoritma perulangan
Algoritma perulanganAlgoritma perulangan
Algoritma perulanganazkiyaku
 
Algoritma dan Struktur Data (Python) - Perulangan
Algoritma dan Struktur Data (Python) - PerulanganAlgoritma dan Struktur Data (Python) - Perulangan
Algoritma dan Struktur Data (Python) - PerulanganAndiNurkholis1
 
Ringkasan 32 keyword_dalam_c
Ringkasan 32 keyword_dalam_cRingkasan 32 keyword_dalam_c
Ringkasan 32 keyword_dalam_claila wulandari
 
Kata kunci java
Kata kunci javaKata kunci java
Kata kunci javaEllo Adu
 
Struktur kontrol percabangan
Struktur kontrol percabanganStruktur kontrol percabangan
Struktur kontrol percabanganCholifatur R
 
Pertemuan 11 : Algoritma & Pemrograman
Pertemuan 11 : Algoritma & PemrogramanPertemuan 11 : Algoritma & Pemrograman
Pertemuan 11 : Algoritma & PemrogramanTri Retna
 
Java (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented ProgrammingJava (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented ProgrammingMelina Krisnawati
 
Pengulangan for Algoritma
Pengulangan for AlgoritmaPengulangan for Algoritma
Pengulangan for Algoritmacasnadi
 
Conditional, looping, function and basic oop
Conditional, looping, function and basic oopConditional, looping, function and basic oop
Conditional, looping, function and basic oopandega
 

What's hot (19)

Algoritma perulangan
Algoritma perulanganAlgoritma perulangan
Algoritma perulangan
 
Algoritma dan Struktur Data (Python) - Perulangan
Algoritma dan Struktur Data (Python) - PerulanganAlgoritma dan Struktur Data (Python) - Perulangan
Algoritma dan Struktur Data (Python) - Perulangan
 
Ringkasan 32 keyword_dalam_c
Ringkasan 32 keyword_dalam_cRingkasan 32 keyword_dalam_c
Ringkasan 32 keyword_dalam_c
 
Pd
PdPd
Pd
 
Tugas Praktikum ke dua
Tugas Praktikum ke duaTugas Praktikum ke dua
Tugas Praktikum ke dua
 
Praktikum 6A
Praktikum 6APraktikum 6A
Praktikum 6A
 
Operasi dan Ekspresi beserta Struktur Kontrol pada PHP
Operasi dan Ekspresi beserta Struktur Kontrol pada PHPOperasi dan Ekspresi beserta Struktur Kontrol pada PHP
Operasi dan Ekspresi beserta Struktur Kontrol pada PHP
 
Makalah perulangan
Makalah perulanganMakalah perulangan
Makalah perulangan
 
Kata kunci java
Kata kunci javaKata kunci java
Kata kunci java
 
Menerapkan struktur kontrol percabangan dalam bahasa pemrograman
Menerapkan struktur kontrol percabangan dalam bahasa pemrogramanMenerapkan struktur kontrol percabangan dalam bahasa pemrograman
Menerapkan struktur kontrol percabangan dalam bahasa pemrograman
 
Struktur kontrol percabangan
Struktur kontrol percabanganStruktur kontrol percabangan
Struktur kontrol percabangan
 
Tipe data
Tipe dataTipe data
Tipe data
 
Pertemuan 11 : Algoritma & Pemrograman
Pertemuan 11 : Algoritma & PemrogramanPertemuan 11 : Algoritma & Pemrograman
Pertemuan 11 : Algoritma & Pemrograman
 
Java (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented ProgrammingJava (Netbeans) - Looping - Object Oriented Programming
Java (Netbeans) - Looping - Object Oriented Programming
 
Function dalam pemrograman
Function dalam pemrogramanFunction dalam pemrograman
Function dalam pemrograman
 
makalah perulangan
makalah perulanganmakalah perulangan
makalah perulangan
 
Pengulangan for Algoritma
Pengulangan for AlgoritmaPengulangan for Algoritma
Pengulangan for Algoritma
 
Resume praktikum 3__pointer
Resume praktikum 3__pointerResume praktikum 3__pointer
Resume praktikum 3__pointer
 
Conditional, looping, function and basic oop
Conditional, looping, function and basic oopConditional, looping, function and basic oop
Conditional, looping, function and basic oop
 

Viewers also liked

01.06 Java SE_getting user input
01.06 Java SE_getting user input01.06 Java SE_getting user input
01.06 Java SE_getting user inputJefri Fahrian
 
Hotel gianna parco card
Hotel gianna parco cardHotel gianna parco card
Hotel gianna parco cardHotel Gianna
 
Social & Policy Sciences Employers Leaflet 2011
Social & Policy Sciences Employers Leaflet 2011Social & Policy Sciences Employers Leaflet 2011
Social & Policy Sciences Employers Leaflet 2011astedahl
 
a geografia e organização do espaço
a geografia e organização do espaçoa geografia e organização do espaço
a geografia e organização do espaçoGirleno Oliveira
 
04.47 JAVA SE_more on static
04.47 JAVA SE_more on static04.47 JAVA SE_more on static
04.47 JAVA SE_more on staticJefri Fahrian
 
Presentasi bd2 jefri 4.3 logging
Presentasi bd2 jefri 4.3 loggingPresentasi bd2 jefri 4.3 logging
Presentasi bd2 jefri 4.3 loggingJefri Fahrian
 
Recent Updates and Practical Advice About Trade Secrets, Non-Compete Agreemen...
Recent Updates and Practical Advice About Trade Secrets, Non-Compete Agreemen...Recent Updates and Practical Advice About Trade Secrets, Non-Compete Agreemen...
Recent Updates and Practical Advice About Trade Secrets, Non-Compete Agreemen...Parsons Behle & Latimer
 
Деинституционализацията в България!
Деинституционализацията в България!Деинституционализацията в България!
Деинституционализацията в България!CIL - Sofia
 
Proyecto manhattan.pptxbueno
Proyecto manhattan.pptxbuenoProyecto manhattan.pptxbueno
Proyecto manhattan.pptxbuenovolleyball
 
Html5 でアプリを作るということ
Html5 でアプリを作るということHtml5 でアプリを作るということ
Html5 でアプリを作るということNaruto TAKAHASHI
 
ISU Presentation - Andrei Carianopol
ISU Presentation - Andrei CarianopolISU Presentation - Andrei Carianopol
ISU Presentation - Andrei CarianopolAndrei Carianopol
 
Prakt.jarkom2 jefri tugas2 - KONFIGURASI LOAD BALANCING ROUTER DI MIKROTIK OS
Prakt.jarkom2 jefri tugas2 - KONFIGURASI LOAD BALANCING ROUTER DI MIKROTIK OSPrakt.jarkom2 jefri tugas2 - KONFIGURASI LOAD BALANCING ROUTER DI MIKROTIK OS
Prakt.jarkom2 jefri tugas2 - KONFIGURASI LOAD BALANCING ROUTER DI MIKROTIK OSJefri Fahrian
 
TFMA Presentation - Transforming Client - Agency Interactions
TFMA Presentation - Transforming Client - Agency Interactions TFMA Presentation - Transforming Client - Agency Interactions
TFMA Presentation - Transforming Client - Agency Interactions SkyDox LTD
 

Viewers also liked (20)

01.06 Java SE_getting user input
01.06 Java SE_getting user input01.06 Java SE_getting user input
01.06 Java SE_getting user input
 
JIN SEI KAN
JIN SEI KANJIN SEI KAN
JIN SEI KAN
 
камянець подільський
камянець   подільськийкамянець   подільський
камянець подільський
 
Hotel gianna parco card
Hotel gianna parco cardHotel gianna parco card
Hotel gianna parco card
 
Freello Eventi Live
Freello Eventi LiveFreello Eventi Live
Freello Eventi Live
 
Codemotion 2015 - Unit Testing
Codemotion 2015 - Unit TestingCodemotion 2015 - Unit Testing
Codemotion 2015 - Unit Testing
 
Social & Policy Sciences Employers Leaflet 2011
Social & Policy Sciences Employers Leaflet 2011Social & Policy Sciences Employers Leaflet 2011
Social & Policy Sciences Employers Leaflet 2011
 
Tizen & Crosswalk
Tizen & CrosswalkTizen & Crosswalk
Tizen & Crosswalk
 
a geografia e organização do espaço
a geografia e organização do espaçoa geografia e organização do espaço
a geografia e organização do espaço
 
04.47 JAVA SE_more on static
04.47 JAVA SE_more on static04.47 JAVA SE_more on static
04.47 JAVA SE_more on static
 
Presentasi bd2 jefri 4.3 logging
Presentasi bd2 jefri 4.3 loggingPresentasi bd2 jefri 4.3 logging
Presentasi bd2 jefri 4.3 logging
 
Recent Updates and Practical Advice About Trade Secrets, Non-Compete Agreemen...
Recent Updates and Practical Advice About Trade Secrets, Non-Compete Agreemen...Recent Updates and Practical Advice About Trade Secrets, Non-Compete Agreemen...
Recent Updates and Practical Advice About Trade Secrets, Non-Compete Agreemen...
 
Деинституционализацията в България!
Деинституционализацията в България!Деинституционализацията в България!
Деинституционализацията в България!
 
Proyecto manhattan.pptxbueno
Proyecto manhattan.pptxbuenoProyecto manhattan.pptxbueno
Proyecto manhattan.pptxbueno
 
Html5 でアプリを作るということ
Html5 でアプリを作るということHtml5 でアプリを作るということ
Html5 でアプリを作るということ
 
ISU Presentation - Andrei Carianopol
ISU Presentation - Andrei CarianopolISU Presentation - Andrei Carianopol
ISU Presentation - Andrei Carianopol
 
Prakt.jarkom2 jefri tugas2 - KONFIGURASI LOAD BALANCING ROUTER DI MIKROTIK OS
Prakt.jarkom2 jefri tugas2 - KONFIGURASI LOAD BALANCING ROUTER DI MIKROTIK OSPrakt.jarkom2 jefri tugas2 - KONFIGURASI LOAD BALANCING ROUTER DI MIKROTIK OS
Prakt.jarkom2 jefri tugas2 - KONFIGURASI LOAD BALANCING ROUTER DI MIKROTIK OS
 
size matters
size matterssize matters
size matters
 
TFMA Presentation - Transforming Client - Agency Interactions
TFMA Presentation - Transforming Client - Agency Interactions TFMA Presentation - Transforming Client - Agency Interactions
TFMA Presentation - Transforming Client - Agency Interactions
 
Gerah kapita_rustam
Gerah kapita_rustamGerah kapita_rustam
Gerah kapita_rustam
 

Similar to 01.12 JAVA SE_switch statement

JENI-Intro1-Bab06-Struktur Kontrol.pdf
JENI-Intro1-Bab06-Struktur Kontrol.pdfJENI-Intro1-Bab06-Struktur Kontrol.pdf
JENI-Intro1-Bab06-Struktur Kontrol.pdfJurnal IT
 
Flow control, exception handling array
Flow control, exception handling arrayFlow control, exception handling array
Flow control, exception handling arrayRangga Ananto
 
Percabangan pada pemrograman java netbeans
Percabangan pada pemrograman java netbeansPercabangan pada pemrograman java netbeans
Percabangan pada pemrograman java netbeansputra alexi
 
4-Struktur Kontrol-PERCABANGAN.pptx
4-Struktur Kontrol-PERCABANGAN.pptx4-Struktur Kontrol-PERCABANGAN.pptx
4-Struktur Kontrol-PERCABANGAN.pptxAlifkemal
 
Modul praktikum java pemrograman berorientasi objek
Modul praktikum java pemrograman berorientasi objekModul praktikum java pemrograman berorientasi objek
Modul praktikum java pemrograman berorientasi objekimam arifin
 
2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdf2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdfJurnal IT
 
2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdf2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdfJurnal IT
 
Meeting 9 pemrograman shell - a
Meeting 9    pemrograman shell - a Meeting 9    pemrograman shell - a
Meeting 9 pemrograman shell - a Syaiful Ahdan
 
PBO Pert 4 Praktek
PBO Pert 4 PraktekPBO Pert 4 Praktek
PBO Pert 4 PraktekRUDISELAMAT2
 
Ringkasan materi teori algoritma
Ringkasan materi teori algoritmaRingkasan materi teori algoritma
Ringkasan materi teori algoritmaAkhmad Asari
 
Laporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis ObjekLaporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis ObjekKuncara Laksana
 
Struktur Kontrol PHP
Struktur Kontrol PHPStruktur Kontrol PHP
Struktur Kontrol PHPMutiara Ayu
 
Object oriented programming menggunakan java
Object oriented programming menggunakan javaObject oriented programming menggunakan java
Object oriented programming menggunakan javaAntara BoyKean
 
Modul6 1225443461187631-8
Modul6 1225443461187631-8Modul6 1225443461187631-8
Modul6 1225443461187631-8aan_junior147
 
Jeni intro1-bab06-struktur kontrol
Jeni intro1-bab06-struktur kontrolJeni intro1-bab06-struktur kontrol
Jeni intro1-bab06-struktur kontrolKristanto Wijaya
 
Pemrograman algoritma (IF,else)
Pemrograman algoritma (IF,else)Pemrograman algoritma (IF,else)
Pemrograman algoritma (IF,else)Mr. FM
 
materi-iii-pengenalan-pascal.ppt
materi-iii-pengenalan-pascal.pptmateri-iii-pengenalan-pascal.ppt
materi-iii-pengenalan-pascal.pptYudaPerwira5
 

Similar to 01.12 JAVA SE_switch statement (20)

JENI-Intro1-Bab06-Struktur Kontrol.pdf
JENI-Intro1-Bab06-Struktur Kontrol.pdfJENI-Intro1-Bab06-Struktur Kontrol.pdf
JENI-Intro1-Bab06-Struktur Kontrol.pdf
 
Flow control, exception handling array
Flow control, exception handling arrayFlow control, exception handling array
Flow control, exception handling array
 
Percabangan pada pemrograman java netbeans
Percabangan pada pemrograman java netbeansPercabangan pada pemrograman java netbeans
Percabangan pada pemrograman java netbeans
 
4-Struktur Kontrol-PERCABANGAN.pptx
4-Struktur Kontrol-PERCABANGAN.pptx4-Struktur Kontrol-PERCABANGAN.pptx
4-Struktur Kontrol-PERCABANGAN.pptx
 
Modul praktikum java pemrograman berorientasi objek
Modul praktikum java pemrograman berorientasi objekModul praktikum java pemrograman berorientasi objek
Modul praktikum java pemrograman berorientasi objek
 
FLOW CONTROL.pdf
FLOW CONTROL.pdfFLOW CONTROL.pdf
FLOW CONTROL.pdf
 
2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdf2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdf
 
2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdf2_Struktur_kontrol.pdf
2_Struktur_kontrol.pdf
 
Laporan tugas struktur data
Laporan tugas struktur dataLaporan tugas struktur data
Laporan tugas struktur data
 
Meeting 9 pemrograman shell - a
Meeting 9    pemrograman shell - a Meeting 9    pemrograman shell - a
Meeting 9 pemrograman shell - a
 
PBO Pert 4 Praktek
PBO Pert 4 PraktekPBO Pert 4 Praktek
PBO Pert 4 Praktek
 
Ringkasan materi teori algoritma
Ringkasan materi teori algoritmaRingkasan materi teori algoritma
Ringkasan materi teori algoritma
 
Laporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis ObjekLaporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis Objek
 
Struktur Kontrol PHP
Struktur Kontrol PHPStruktur Kontrol PHP
Struktur Kontrol PHP
 
Object oriented programming menggunakan java
Object oriented programming menggunakan javaObject oriented programming menggunakan java
Object oriented programming menggunakan java
 
Modul6 1225443461187631-8
Modul6 1225443461187631-8Modul6 1225443461187631-8
Modul6 1225443461187631-8
 
Jeni Intro1 Bab06 Struktur Kontrol
Jeni Intro1 Bab06 Struktur KontrolJeni Intro1 Bab06 Struktur Kontrol
Jeni Intro1 Bab06 Struktur Kontrol
 
Jeni intro1-bab06-struktur kontrol
Jeni intro1-bab06-struktur kontrolJeni intro1-bab06-struktur kontrol
Jeni intro1-bab06-struktur kontrol
 
Pemrograman algoritma (IF,else)
Pemrograman algoritma (IF,else)Pemrograman algoritma (IF,else)
Pemrograman algoritma (IF,else)
 
materi-iii-pengenalan-pascal.ppt
materi-iii-pengenalan-pascal.pptmateri-iii-pengenalan-pascal.ppt
materi-iii-pengenalan-pascal.ppt
 

More from Jefri Fahrian

06.77 JAVA SE_adapter classes
06.77 JAVA SE_adapter classes06.77 JAVA SE_adapter classes
06.77 JAVA SE_adapter classesJefri Fahrian
 
06.84 JAVA SE_drawing graphics
06.84 JAVA SE_drawing graphics06.84 JAVA SE_drawing graphics
06.84 JAVA SE_drawing graphicsJefri Fahrian
 
05.70 JAVA SE_java list
05.70  JAVA SE_java list05.70  JAVA SE_java list
05.70 JAVA SE_java listJefri Fahrian
 
05.63 JAVA SE_java button final
05.63 JAVA SE_java button final05.63 JAVA SE_java button final
05.63 JAVA SE_java button finalJefri Fahrian
 
04.56 JAVA SE_polymorphic arguements
04.56 JAVA SE_polymorphic arguements04.56 JAVA SE_polymorphic arguements
04.56 JAVA SE_polymorphic arguementsJefri Fahrian
 
03.40 JAVA SE_get and set method
03.40 JAVA SE_get and set method03.40 JAVA SE_get and set method
03.40 JAVA SE_get and set methodJefri Fahrian
 
02.26 JAVA SE_random number generator
02.26 JAVA SE_random number generator02.26 JAVA SE_random number generator
02.26 JAVA SE_random number generatorJefri Fahrian
 
03.33 JAVA SE_multidimensional arays
03.33 JAVA SE_multidimensional arays03.33 JAVA SE_multidimensional arays
03.33 JAVA SE_multidimensional araysJefri Fahrian
 
02.19 Java SE_else if statement
02.19 Java SE_else if statement02.19 Java SE_else if statement
02.19 Java SE_else if statementJefri Fahrian
 
Praktikum8 komdat_using FTP
Praktikum8 komdat_using FTPPraktikum8 komdat_using FTP
Praktikum8 komdat_using FTPJefri Fahrian
 
Praktikum7 komdat_setting linksys access point
Praktikum7 komdat_setting linksys access pointPraktikum7 komdat_setting linksys access point
Praktikum7 komdat_setting linksys access pointJefri Fahrian
 
Praktikum6 komdat_NAT in Virtual Box
Praktikum6 komdat_NAT in Virtual BoxPraktikum6 komdat_NAT in Virtual Box
Praktikum6 komdat_NAT in Virtual BoxJefri Fahrian
 
Praktikum5 komdat_SHARE FILE DARI KOMPUTER HOST KE GUEST
Praktikum5 komdat_SHARE FILE DARI KOMPUTER HOST KE GUESTPraktikum5 komdat_SHARE FILE DARI KOMPUTER HOST KE GUEST
Praktikum5 komdat_SHARE FILE DARI KOMPUTER HOST KE GUESTJefri Fahrian
 
Praktikum4 komdat_install windows xp in virtual box
Praktikum4 komdat_install windows xp in virtual boxPraktikum4 komdat_install windows xp in virtual box
Praktikum4 komdat_install windows xp in virtual boxJefri Fahrian
 
Praktikum2 komdat_ basic command prompt & sharing file in windows
Praktikum2 komdat_ basic command prompt & sharing file in windowsPraktikum2 komdat_ basic command prompt & sharing file in windows
Praktikum2 komdat_ basic command prompt & sharing file in windowsJefri Fahrian
 
Praktikum1 komdat_pembuatan kabel UTP (stright dan cross)
Praktikum1 komdat_pembuatan kabel UTP (stright dan cross)Praktikum1 komdat_pembuatan kabel UTP (stright dan cross)
Praktikum1 komdat_pembuatan kabel UTP (stright dan cross)Jefri Fahrian
 
Prakt.jarkom1 jefri tugas ke 4 SETTING WEB PROXY dan FIREWALL MIKROTIK
Prakt.jarkom1 jefri tugas ke 4 SETTING WEB PROXY dan FIREWALL MIKROTIKPrakt.jarkom1 jefri tugas ke 4 SETTING WEB PROXY dan FIREWALL MIKROTIK
Prakt.jarkom1 jefri tugas ke 4 SETTING WEB PROXY dan FIREWALL MIKROTIKJefri Fahrian
 
Prakt.jarkom1 jefri tugas ke 3 SETTING HOTSPOT MIKROTIK
Prakt.jarkom1 jefri tugas ke 3 SETTING HOTSPOT MIKROTIKPrakt.jarkom1 jefri tugas ke 3 SETTING HOTSPOT MIKROTIK
Prakt.jarkom1 jefri tugas ke 3 SETTING HOTSPOT MIKROTIKJefri Fahrian
 
Prakt.jarkom1 jefri tugas ke 2 - SETTING DHCP dan NTP SERVER MIKROTIK
Prakt.jarkom1 jefri tugas ke 2 - SETTING DHCP dan NTP SERVER MIKROTIKPrakt.jarkom1 jefri tugas ke 2 - SETTING DHCP dan NTP SERVER MIKROTIK
Prakt.jarkom1 jefri tugas ke 2 - SETTING DHCP dan NTP SERVER MIKROTIKJefri Fahrian
 
Prakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OS
Prakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OSPrakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OS
Prakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OSJefri Fahrian
 

More from Jefri Fahrian (20)

06.77 JAVA SE_adapter classes
06.77 JAVA SE_adapter classes06.77 JAVA SE_adapter classes
06.77 JAVA SE_adapter classes
 
06.84 JAVA SE_drawing graphics
06.84 JAVA SE_drawing graphics06.84 JAVA SE_drawing graphics
06.84 JAVA SE_drawing graphics
 
05.70 JAVA SE_java list
05.70  JAVA SE_java list05.70  JAVA SE_java list
05.70 JAVA SE_java list
 
05.63 JAVA SE_java button final
05.63 JAVA SE_java button final05.63 JAVA SE_java button final
05.63 JAVA SE_java button final
 
04.56 JAVA SE_polymorphic arguements
04.56 JAVA SE_polymorphic arguements04.56 JAVA SE_polymorphic arguements
04.56 JAVA SE_polymorphic arguements
 
03.40 JAVA SE_get and set method
03.40 JAVA SE_get and set method03.40 JAVA SE_get and set method
03.40 JAVA SE_get and set method
 
02.26 JAVA SE_random number generator
02.26 JAVA SE_random number generator02.26 JAVA SE_random number generator
02.26 JAVA SE_random number generator
 
03.33 JAVA SE_multidimensional arays
03.33 JAVA SE_multidimensional arays03.33 JAVA SE_multidimensional arays
03.33 JAVA SE_multidimensional arays
 
02.19 Java SE_else if statement
02.19 Java SE_else if statement02.19 Java SE_else if statement
02.19 Java SE_else if statement
 
Praktikum8 komdat_using FTP
Praktikum8 komdat_using FTPPraktikum8 komdat_using FTP
Praktikum8 komdat_using FTP
 
Praktikum7 komdat_setting linksys access point
Praktikum7 komdat_setting linksys access pointPraktikum7 komdat_setting linksys access point
Praktikum7 komdat_setting linksys access point
 
Praktikum6 komdat_NAT in Virtual Box
Praktikum6 komdat_NAT in Virtual BoxPraktikum6 komdat_NAT in Virtual Box
Praktikum6 komdat_NAT in Virtual Box
 
Praktikum5 komdat_SHARE FILE DARI KOMPUTER HOST KE GUEST
Praktikum5 komdat_SHARE FILE DARI KOMPUTER HOST KE GUESTPraktikum5 komdat_SHARE FILE DARI KOMPUTER HOST KE GUEST
Praktikum5 komdat_SHARE FILE DARI KOMPUTER HOST KE GUEST
 
Praktikum4 komdat_install windows xp in virtual box
Praktikum4 komdat_install windows xp in virtual boxPraktikum4 komdat_install windows xp in virtual box
Praktikum4 komdat_install windows xp in virtual box
 
Praktikum2 komdat_ basic command prompt & sharing file in windows
Praktikum2 komdat_ basic command prompt & sharing file in windowsPraktikum2 komdat_ basic command prompt & sharing file in windows
Praktikum2 komdat_ basic command prompt & sharing file in windows
 
Praktikum1 komdat_pembuatan kabel UTP (stright dan cross)
Praktikum1 komdat_pembuatan kabel UTP (stright dan cross)Praktikum1 komdat_pembuatan kabel UTP (stright dan cross)
Praktikum1 komdat_pembuatan kabel UTP (stright dan cross)
 
Prakt.jarkom1 jefri tugas ke 4 SETTING WEB PROXY dan FIREWALL MIKROTIK
Prakt.jarkom1 jefri tugas ke 4 SETTING WEB PROXY dan FIREWALL MIKROTIKPrakt.jarkom1 jefri tugas ke 4 SETTING WEB PROXY dan FIREWALL MIKROTIK
Prakt.jarkom1 jefri tugas ke 4 SETTING WEB PROXY dan FIREWALL MIKROTIK
 
Prakt.jarkom1 jefri tugas ke 3 SETTING HOTSPOT MIKROTIK
Prakt.jarkom1 jefri tugas ke 3 SETTING HOTSPOT MIKROTIKPrakt.jarkom1 jefri tugas ke 3 SETTING HOTSPOT MIKROTIK
Prakt.jarkom1 jefri tugas ke 3 SETTING HOTSPOT MIKROTIK
 
Prakt.jarkom1 jefri tugas ke 2 - SETTING DHCP dan NTP SERVER MIKROTIK
Prakt.jarkom1 jefri tugas ke 2 - SETTING DHCP dan NTP SERVER MIKROTIKPrakt.jarkom1 jefri tugas ke 2 - SETTING DHCP dan NTP SERVER MIKROTIK
Prakt.jarkom1 jefri tugas ke 2 - SETTING DHCP dan NTP SERVER MIKROTIK
 
Prakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OS
Prakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OSPrakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OS
Prakt.jarkom1 jefri tugas ke 1 - INSTALASI MIKROTIK OS
 

01.12 JAVA SE_switch statement

  • 1. Jefri Fahrian TI’12 | Page 1 of 4 01.12 Switch Statement Jefri Fahrian (6) Dalam pemrograman penggunaan pernyataan percabangan/pemilihan tentu sangat berguna untuk mengeksekusi suatu perintah yang memiliki syarat/kondisi tertentu. Salah satu pernyataan untuk melakukan fungsi tersebut adalah switch statement. Pernyataan ini juga memiliki fungsi alternatif seperti pada pernyataan if – else (nested if). Pernyataan Switch Switch – case merupakan pernyataan yang dirancang khusus untuk menangani pengambilan keputusan yang melibatkan sejumlah atau banyak alternatif penyelesaian. Pernyataan switch - case ini memiliki kegunaan sama seperti if – else bertingkat (nested if). Kontruksi if-else yang bertingkat - tingkat seringkali membingungkan pembacaan alur program. Java menyediakan pernyataan switch untuk memudahkan pembacaan alur program bercabang yang sangat banyak. Meskipun switch didesain untuk menggantii if-else, akan tetapi switch memiliki batasan berikut : - Data yang diperiksa haruslah bertipe integer (int) atau character (char) - Range data yang diperiksa bernilai 0 s/d 255 (Hariyanto, 2003) Sintaks percabangan switch di Java adalah : Switch (expression) { Case constanta1: Statement1 Case constanta2: Statement2 Default statement } Keterangan : - constanta1, constanta2, dst adalah kontanta yang akan dicocokkan dengan isi exspression - statement adalah pernyataan yang akan dikerjakan jika expression (bertipe int atau char) cocok dengan salah satu data dari constanta1, constanta2, dan seterusmya.
  • 2. Jefri Fahrian TI’12 | Page 2 of 4 - 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 expression tidak cocok dengan salah satu dari constanta yang tersedia (Hariyanto, 2003) Contoh program : 1 import java.util.Scanner; 2 public class prodi { 3 public static void main(String args[]) { 4 // Pembuatan objek input untuk menggantikan fungsi scanner 5 Scanner input = new Scanner(System.in); 6 7 // Mendeklarasikan variabel 8 String nama; 9 int pil; 10 // Meminta inputan 11 System.out.print("Masukkan Nama : "); 12 nama= input.next(); 13 System.out.print("Pilihan prodi : "); 14 pil= input.nextInt(); 15 16 // Pengujian pilihan 17 switch (pil) { 18 case 1: 19 System.out.println("Desain Komunikasi Visual"); 20 break; 21 case 2: 22 System.out.println("Desain Produk Industri"); 23 break; 24 case 3: 25 System.out.println("Teknik Informatika"); 26 break; 27 case 4: 28 System.out.println("Falsafah Agama"); 29 break; 30 case 5: 31 System.out.println("Hubungan Internasional"); 32 break; 33 case 6: 34 System.out.println("Psikologi"); 35 break; 36 case 7: 37 System.out.println("Ilmu Komunikasi"); 38 break; 39 case 8: 40 System.out.println("Manajemen"); 41 break; 42 //Jika tidak ada ekspresi yang cocok akan dieksekusi 43 default: 44 System.out.println("Pilihan prodi salah !"); 45 } 46 } 47 }
  • 3. Jefri Fahrian TI’12 | Page 3 of 4 Keluaran program : Masukkan Nama : Jefri Fahrian Pilihan prodi : 3 Teknik Informatika Percabangan switch mengevaluasi dan membandingkan expression untuk semua constanta case dan mengendalikan eksekusi program ke pernyataan case yang cocok dengan expression. Jika tidak ada expression yang cocok maka program menuju ke default statement. Pernyataan break adalah opsional, jika kita meniadakan break, maka eksekusi akan terus dijalankan ke pernyataan case berikutnya. Berikut adalah fitur penting pernyataan switch : 1. Pernyataan switch berbeda dengan pernyataan if-else dimana switch hanya bisa menguji kesamaan tipe ekspresi int/char, sedangkan pernyataan if- else dapat melakukan evaluasi sembarang tipe ekspresi boolean. Dengan demikian, switch terlihat seperti hanya mencocokkan di antara nilai – nilai ekspresi dan constanta case. 2. Tidak ada constanta case di block case yang sama dapat mempunyai nilai identik. Tentu saja untuk pernyataan switch bersarang (nested switch) yang diapit switch luar dapat mempunyai kontanta yang sama dengan konstanta di switch luar. 3. Pernyataan switch biasanya lebih efisien dibanding if-else bersarang yang dalam. Dalam mengompilasi pernyataan switch, Java compiler akan melakukan inspeksi masing – masing constanta case dan menciptakan “jump table” yang akan digunakan untuk memilih jalur eksekusi bergantung nilai ekspresi. Dengan demikian, jika kita hendak memilih sekelompok besar nilai maka pernyataan switch akan berjalan lebih cepat dibanding menggunakan pernyataan else-if. Kompilator melakukannya dengan mengetahui bahwa semua contanta case bertipe sama dan cukup membandingkan kesamaan dengan jump table. (Hariyanto, 2003)
  • 4. Jefri Fahrian TI’12 | Page 4 of 4 Daftar Pustaka Bloch, J. (2001). Effective Java: Programming Language Guide. Massachusetts: Addison Wesley. Bracha, G. (2004). Generics in the Java Programming Language. Hariyanto, B. (2003). Esensi - Esensi bahasa pemrograman Java. Bandung: Penerbit Informatika. Harold, E. R. (1999). Java I/O. O'Reilly. McLaughlin, B. (2002). Building Java™ Enterprise Applications Volume I: Architecture. O'Reilly.