Java Struktur Kontrol
Pada bagian
ini, kita akan mempelajari
tentang struktur kontrol dimana kita dapat mengubah
cara eksekusi pada pernyataan yang dibuat di program kita.
Struktur kontrol
adalah pernyataan dari Java yang
mengijinkan user untuk memilih dan mengeksekusi blok kode spesifik
dan mengabaikan blok kode yang lain.
Dalam membuat aplikasi tentunya
bukan hanya membutuhkan masukan (input) dan keluaran (output). Namun aplikasi
yang dibuat juga harus dapat memproses secara tepat data yang pengguna inputkan
sehingga diharapkan dapat menampilkan output informasi yang tepat pula.
Untuk memproses data tersebut,
dibutuhkan adanya prosedur yang tepat yang perlu dibuat yang merupakan suatu
intruksi yang harus atau tidak harus dilakukan oleh komputer. Di dalam
pemrograman, instruksi yang kita tuliskan dalam bentuk kode bahasa pemrograman,
tentunya tidak harus dilakukan semua secara berurutan tetapi program harus bisa
memilih apa yang harus dilakukan oleh komputer ketika menemui suatu kondisi
khusus yang memerintahkan komputer untuk melakukan atau mengabaikannya.
Di dalam java ada dua jenis struktur kontrol yaitu
kontrol percabangan dan kontrol perulangan.
1. Kontrol
perulangan, yaitu struktur kontrol yang menangani sebuah instruksi yang
dilakukan berulang-ulang hingga suatu kondisi terpenuhi. Blok instruksi
perulangan akan diulang secara terus-menerus hingga suatu kondisi terpenuhi.
Dalam perulangan, harus terdapat sebuah kondisi yang akan menyebabkan
perulangan tersebut terhenti, karena jika tidak, maka perulangan akan melakukan
blok instruksi tersebut secara terus-menerus tanpa henti, yang akan menyebabkan
kesalahan program. Ada beberapa instruksi yang dapat kita deklarasikan untuk
membuat percabangan dalam pemrograman JAVA antara lain for,while dan do-while
.
Statement
While
Pernyataan
while loop adalah pernyataan atau blok pernyataan yang diulang-ulang
sampai mencapai kondisi yang cocok.
Bentuk
pernyataan while,
while(
boolean_expression ){
statement1;
statement2;
.
. .
}
Pernyataan
di dalam while loop akan dieksekusi berulang-ulang selama kondisi boolean_expression
bernilai benar (true). Contoh pada kode di bawah ini:
int i = 4;
while ( i > 0 ){
System.out.print(i);
i--; }
Contoh di atas akan mencetak angka 4321 pada layar. Perlu
dicatat jika bagian i--; dihilangkan, akan menghasilkan pengulangan yang terus
menerus (infinite loop). Sehingga, ketika menggunakan while loop atau
bentuk pengulangan yang lain, pastikan Anda memberikan pernyataan yang membuat
pengulangan berhenti pada suatu kondisi.
Statement Do While
Do-while loop mirip dengan while-loop. Pernyataan di dalam do-while
loop akan dieksekusi beberapa kali selama kondisi bernilai benar(true).
Perbedaan antara while dan do-while loop adalah dimana
pernyataan di dalam do-while loop akan dieksekusi sedikitnya satu
kali.
Bentuk
pernyataan do-while,
do{
statement1;
statement2;
.
. .
}while(
boolean_expression );
Pernyataan di dalam do-while loop akan dieksekusi
pertama kali, dan akan dievaluasi kondisi dari boolean_expression. Jika
nilai pada boolean_expression tersebut bernilai true, pernyataan
di dalam do-while loop akan dieksekusi lagi.
Berikut
ini beberapa contoh do-while loop:
Contoh
1:
int
x = 0;
do
{
System.out.println(x);
x++;
}while
(x<10);
Contoh
ini akan memberikan output 0123456789 pada layar.
Contoh
2:
//infinite
loop
do{
System.out.println(“hello”);
}
while (true);
Contoh di atas akan melakukan pengulangan terus menerus
yang menulis kata “hello” pada layar.
Contoh
3:
//one
loop
//
statement is executed once
do
System.out.println(“hello”);
while
(false);
Contoh
di atas akan memberikan output hello pada layar.
1.3 Statement Perulangan For
Perulangan for menyediakan
sarana mengulang kode dalam jumlah yang tertentu. Pengulangan ini terstruktur
untuk mengulangi kode sampai tercapai batas tertentu.
Berikut bentuk dasar perulangan for :
for(InitializationExpression; LoopCondition; StepExpression)
statement
ü InitializationExpression,
digunakan untuk inisialisasi variabel kendali perulangan.
ü LoopCondition,
membandingkan variabel kendali perulangan dengan suatu nilai batas.
ü StepExpression,
menspesifkasikan cara variabel kendali dimodifikasi sebelum iterasi berikutnya
dari perulangan.
Contoh:
public
class For1
{
public
static void main(String[] args)
{
int i;
for (i = 1;i<11;i++)
System.out.println(i);
}
}
Hasil (output) dari contoh listing program di
atas:
1
2
3
4
5
6
7
8
9
10
Pernyataan for-loop Bersarang
Java memungkinkan loop yang disarangkan di loop
y`ng lain. Satu loop berada di dalam loop yang lainnya.
Contoh:
public
class Loopbersarang1{
public
static void main(String[] args){
for(int
i=0;i<10;i++){
for(int
j=i;j<10;j++){
System.out.print("*");}
System.out.println();
}
}
}
Hasil
(output) dari contoh listing program di atas:
*
**
*
**
*
**
*
2. Kontrol
percabangan,yaitu struktur kontrol yang memerlukan sebuah atau beberapa kondisi
sebelum menjalankan program lainnya. Jika telah memenuhi suatu kondisi, maka
pernyataan di dalam kondisi yang sesuai tersebut akan dijalankan. Jika tidak,
maka akan mencari kondisi lainnya yang sesuai di dalam kontrol percabangan. Dan
jika masih tidak ditemukan kondisi yang sesuai di dalam percabangan tersebut,
maka akan dilanjutkan ke instruksi berikutnya di luar percabangan jika ada, dan
akan berhenti jika tidak ada kondisi yang sesuai. Ada beberapa instruksi yang
dapat kita deklarasikan untuk membuat percabangan dalam pemrograman java antara
lain if,if-else dan switch.
public class Logika_if {
public static void main (String args[]){
int targetnilai=60;
boolean lulus=false;
int nilaianda=70;
if (nilaianda > targetnilai){
lulus = true;
}
System.out.println(“Status kelulusan :”+lulus);
}
}
Contoh Program Dengan Statement If Else:
public class Statement_If_Else {
public static void main (String args[]) {
int targetnilai=60;
String hadiah=”";
int nilaianda=50;
if (nilaianda > targetnilai){
hadiah = “ponsel”;
} else{
hadiah = “radio FM”;
System.out.println(“Jenis hadiah :”+hadiah);
}
}
}
Bentuk statement if-else if,
if( boolean_expression1 )
statement1;
else if( boolean_expression2 )
statement2;
else statement3
Contoh Program Dengan Ststement If Else If :
import javax.swing.*;
public class Statement_If_Else_if {
public static void main(String args[]) {
String input=JOptionPane.showInputDialog(“Nilai anda ?”);
int nilai=Integer.parseInt(input); String grade=” “;
if(nilai>85){
grade=”A”;
}else if(nilai>75){
grade=”B”;
}else{
grade=”E”;
}
System.out.println(“Nilai Anda : “+nilai);
System.out.println(“Grade Anda : “+grade);
System.exit(0);
}
}
kondisi dari nilai.
Bentuk statement switch,
switch( switch_expression )
{
case case_selector1: statement1;
break;
case case_selector2: statement2;
break;
default: statement3;
break;
}
switch_expression adalah ekspresi integer atau karakter dan case_selector1, case_selector2 dan seterusnya adalah konstanta unik dari nilai integer atau karakter.
Contoh Program Dengan Ststement Switch Case:
import javax.swing.*;
public class AlurSwitch {
public static void main(String args[]) {
String pilihan=JOptionPane.showInputDialog(“Menu :n1. Sate Kambingn2.
Gulen3. Sop Kaki Kambingn4. Tongseng”);
int menu=Integer.parseInt(pilihan);
switch(menu)
{
case 1: System.out.println(“pilih sate kambing”);
break;
case 2: System.out.println(“pilih gule”);
break;
case 3: System.out.println(“pilih sop kaki kambing”);
break;
case 4: System.out.println(“pilih tongseng”);
break;
default: System.out.println(“Maaf, menu tidak ada”);
break;
} System.exit(0);
}
}
KESALAHAN
UMUM
1.
Kondisi di dalam statement If-Statement tidak di tentukan dalam nilai Boolean.
Contoh:
//SALAH
Int number = 0;
If (number){
//statement
}
Angka variable tidak di tentukan
sebagai nilai Boolean.
2.
Menulis else-if sebagai ganti dari else-if.
KESALAHAN UMUM(2)
3.
Menggunakan = pengganti dari ==sebagai pembading
Contoh:
//SALAH
Int number = 0;
If (number = o){
//statement
}
Seharusnya di tulis
//BENAR
Int number = 0
If (number ==0){
//statement
}