Followers

Friday, March 1, 2019

Pernyataan Break Java | Branching Statement



Pernyataan break digunakan untuk keluar segera dari tubuh perulangan dimana pernyataan break tersebut berada, dengan mengabaikan/tidak mengeksekusi pernyataan sesudahnya didalam perulangan. Setelah keluar dari
perulangan progam akan megeksekusi pernyataan sesudah closing braces (}) dari perulangan.
Pernyataan break biasanya berjalan dengan pernyataan if, artinya pernyataan break akan dieksekusi jika suatu kondisi terpenuhi
Ada dua bentuk dari pernyataan break yaitu :
a. Berlabel(labeled), dan
b. Tidak berlabel(unlabeled).

A. Break dengan bentuk tidak berlabel(unlabeled)
Pernyataan break unlabeled secara umum digunakan dalam pernyataan Switch, tapi kita juga dapat menggunakannya untuk keluar dari tubuh perulangan for, while, dan do-while. Dalam kondisi nested loop(perulangan bercabang), break hanya akan menghentikan eksekusi perulangan dimana ia berada.

Contoh 1

Kode :
public class Example1Unlabeled{
 public static void main(String[] args) {
  int[] array = 
  {
   32, 87, 3, 589, 12, 1076, 2000, 8, 622, 127
  };
  int searchFor = 12;

  int i;
  boolean foundIt = false;
  for (i = 0; i < array.length ;i++ ) {
   if (array[i] == searchFor) {
    foundIt = true;
    break;
   }
  }
  if (foundIt) {
   System.out.println("Angka "+searchFor+" berada di index "+i);
  }else{
   System.out.println(searchFor+" Angka tidak ditemukan dalam Array");
  }
 }
}
Output:
Angka 12 berada di index 4

Contoh 2  

Kode:
public class Example2Unlabeled{
 public static void main(String[] args) {
  for (int i=1;i<=10 ;i++ ) {
   System.out.println(i);
   if (i==5) {
    break;
   }
  }
  System.out.println("Out of for-loop");
 }
}

Output:
1
2
3
4
5

Contoh 3:  

Kode:
public class Example3Unlabeled{
 public static void main(String[] args) {
  int i=0;
  while(i < 5){
   System.out.print(i+" ");
   if (i == 3) {
    break;
   }
   i++;
  }
  System.out.println("\nOut of while loop");
 }
}

Output:
0 1 2 3 
Out of while loop

Contoh 4:

Kode:
public class Example4Unlabeled{
 public static void main(String[] args) {
  int i = 0;
  do{
   System.out.print(i+" ");
   i++;
   if (i == 5) {
    break;
   }
  }while(i < 100);
  System.out.println("\nOut of while loop");
 }
}

Output:
0 1 2 3 4 
Out of while loop

B. Break dengan bentuk berlabel(labeled)
Pernyataan break berlabel digunakan untuk menghentikan eksekusi perulangan yang dibungkus dalam suatu label. Perulangan harus diberikan label agar dapat berfungsi.  
Contoh 1:

Kode:
public class Example1Labeled{
 public static void main(String[] args) {
  int [][] array = {
   { 32, 87, 3, 589},
   { 12, 1076, 2000, 8},
   { 622, 127, 77, 955}
  };
  int searchFor = 12;

  int i;
  int j = 0;
  boolean foundIt = false;

  search:
   for (i = 0; i < array.length ;i++ ) {
    for (j = 0; j < array[i].length ;j++ ) {
     if (array[i][j] == searchFor) {
      foundIt = true;
      break search;
     }
    }
   }
   if (foundIt) {
    System.out.println("angka "+searchFor+" berada di index "+i+", "+j);
   }else{
    System.out.println(searchFor + " angka tidak ada di array");
   }
 }
}

Output:
angka 12 berada di index 1, 0

Contoh 2: Kode:
public class Example2Labeled{
 public static void main(String[] args) {
  int i = 1;
  int j = 0;

  repeat:
  while(i < 10){
   while(j < i){
    System.out.println("i ="+i+" j="+j);
    j++;
    if (j == 5) {
     break repeat;
    }
   }
   i++;
  }
 }
}

Output :
i =1 j=0
i =2 j=1
i =3 j=2
i =4 j=3
i =5 j=4


Sumber: https://docs.oracle.com/javase/tutorial/java/nutsandbolts/branch.html

3 comments: