Pemrograman Berorientasi Objek Beni Suranto, S.T.
Pada bab ini akan dibahas mengenai control structure pada bahasa pemrograman Java, meliputi seleksi (decision making) dan pengulangan (loop/repetition). Bab ini terkait erat dengan konsep logika Boolean, tabel kebenaran, struktur if/else, switch, for, while, dan do/while.
Seringkali dalam pemrograman kita ingin mengubah alur dari kontrol program, yaitu bagaimana urutan pengeksekusian instruksi (statement). Terdapat 3 (tiga) teknik dasar dalam mengubah alur kontrol suatu program, yaitu : Memanggil suatu method (Invoke a method) Pemilihan seleksi (Decision making) Perulangan (Loop/ Repetition)
Pemanggilan method (invoke a method). Langkah ini menyebabkan alur eksekusi program berpindah ke method yang dipanggil. Contoh : Pada pemanggilan method println(), alur kontrol eksekusi program berpindah dari method main() dan melompat ke method println(), selanjutnya eksekusi program akan kembali ke method main() ketika method println() selesai dieksekusi.
Pemilihan seleksi (decision making). Langkah ini adalah ketika terdapat beberapa kriteria yang mentukan ke mana arah alur pengeksekusian program. Java memiliki 2 (dua) mekanisme untuk proses pemilihan seleksi: statement if/else dan statement switch.
Perulangan (loop/repetition). Struktur perulangan dipakai ketika dibutuhkan suatu tugas yang perlu diulang dalam jumlah tertentu, biasanya hal ini diimplementasikan dalam bentuk loop. Java memiliki 3 (tiga) mekanisme perulangan: for, while, dan do/while.
Pemilihan seleksi (decision making) dan perulangan (loop/repetition) dikenal dengan konsep control structure karena digunakan untuk mengontrol / mengatur aliran dari eksekusi program. Semua bentuk control structure terkait erat dengan pemahaman logika Boolean.
Statement if Sebuah statement if terdiri dari sebuah ekspresi Boolean yang diikuti oleh 1 (satu) atau lebih statement. Jika ekspresi Boolean yang ada di dalam tanda kurung bernilai benar (true), maka statement dalam kurung kuraval akan dieksekusi. Jika ekspresi Boolean bernilai salah (false) maka statement dalam kurung kuraval akan diabaikan dan eksekusi program akan melompat ke statement setelah tanda kurung kuraval.
Statement if memiliki bentuk sebagai berikut : if(ekspresi_boolean) { //statement yang akan dieksekusi jika ekspresi Boolean bernilai benar }
Statement if/else Sebuah statement if dapat diikuti oleh tambahan statement lainnya, yang akan dieksekusi jika ekspresi Boolean bernilai salah (false). Pada struktur ini, nilai dari ekspresi Boolean menentukan apakah program akan mengeksekusi blok statement if atau blok statement else.
Struktur if/else memiliki bentuk sebagai berikut : if(ekepresi_boolean) { //statement jika ekspresi Boolean bernilai benar } else { //statement jika ekspresi Boolean bernilai salah }
Blok else dapat mengandung statement if lainnya, sehingga membentuk deretan statement if/else dimana hanya 1 (satu) blok if saja yang akan dieksekusi. if(boolean_expression) { } else if(boolean_expression) { } else if(boolean_expression) { } //And so on, until else { }
Statement switch Statement switch memungkinkan sebuah variabel dievaluasi kesamaannya dengan sejumlah nilai tertentu. Tiap nilai biasa disebut sebagai case, dan nilai variabel akan dievaluasi untuk menentukan blok statement pada case mana yang akan dieksekusi.
Statement switch memiliki bentuk sebagai berikut : switch(variable) { case value : //Statements break; //optional case value : //Statements break; //optional default : //Optional //Statements }
Loop for Loop for adalah struktur perulangan yang memungkinkan penulisan loop yang dibutuhkan untuk mengeksekusi blok statement dalam jumlah yang spesifik. Struktur loop if memiliki bentuk sebagai berikut : for(inisialisasi; ekspresi_boolean; update) { //Blok statement }
Loop while Struktur perulangan while memiliki bentuk sebagai berikut : while(ekspresi_boolean) { //Blok statement yang akan diulang }
Pada struktur while di atas, jika ekspresi Boolean bernilai benar (true) maka statement pada blok perulangan akan dieksekusi. Setelah itu, alur eksekusi kembali mengevaluasi ekspresi Boolean, jika ekspresi Boolean masih bernilai benar maka statement diulang kembali. Proses ini akan diulang terus sampai ekspresi Boolean bernilai salah (false)
Loop do/while Struktur do/while memiliki bentuk sebagai berikut : do { //Blok statement }while(ekspresi_boolean);
Pada struktur do/while ekspresi Boolean berada pada akhir struktur sehingga statement dalam blok perulangan minimal akan dieksekusi 1 (satu) kali sebelum ekspresi Boolean dievaluasi. Jika ekspresi Boolean bernilai benar (true) maka statement akan diulang terus sampai ekspresi Boolean bernilai salah (false).
Keyword break Keyword break dapat digunakan pada semua struktur loop. Keyword break menyebabkan perulangan pada loop dihentikan dan langsung menuju statement setelah loop, tanpa memperdulikan jumlah perulangan maupun nilai dari ekspresi Boolean.
Keyword continue Keyword continue dapat digunakan pada semua struktur perulangan untuk mengubah alur eksekusi langsung melompat menuju iterasi berikut dari loop. Pada loop for, keyword continue menyebabkan alur eksekusi melompat ke statement update. Pada loop while, keyword continue alur eksekusi langsung melompat ke ekspresi Boolean.
Loop bersarang (Nested Loops) Nested loop adalah sebuah loop yang muncul / terdapat pada loop lainnya. Seorang programmer dapat menempatkan 1 (satu) atau lebih loop pada blok statement loop yang lain.
End of slides..