Perulangan for

Java Menengah

Jim White

Java Developer

Loop

  • Memungkinkan kita mengulang aksi beberapa kali
  • Paling umum di Java: for loop
    • Dipakai saat jumlah pengulangan sudah diketahui

Gambar tiga panah membentuk lingkaran

Java Menengah

Sintaks for loop

for (int i = 0; i < 5; i++) {

  // Do something

}
  • i: iterator
  • int i = 0: mulai dengan i sama dengan 0
  • i < 5: lanjut selama i lebih kecil dari 5
  • i++: tambah i sebesar 1 tiap loop
  • iterable: objek yang di-loop
    • mis., String atau array
Java Menengah

Contoh for loop

for (int i = 0; i < 5; i++) {
  System.out.println("Hello".charAt(i));
}  
H

e
l l o
  • i adalah iterator
  • "Hello" adalah iterable
Java Menengah

for loop pada array

// Iterasi array dan cetak tiap elemen
int[] num = {1, 2, 3, 4, 5};

for (int i = 0; i < num.length; i++) {
    System.out.println(num[i]);
}
1
2
3
4
5
Java Menengah

Menambah elemen array dalam loop

// Iterasi array 
// dan tambahkan i ke tiap elemen
int[] num = {1, 2, 3, 4, 5};

for (int i = 0; i < num.length; i++) {
    System.out.println("Old: " + num[i]);
    num[i] += i;
    System.out.println("New: " + num[i]);
}
Old: 1
New: 1
Old: 2
New: 3
Old: 3
New: 5
Old: 4
New: 7
Old: 5
New: 9
Java Menengah

Loop tak berujung

  • Penyebab:
    • Iterator tidak diperbarui
    • Kondisi berhenti salah
    • ...
  • Hindari loop tak berujung!
    • Membuat program hang atau crash

Contoh

// i selalu lebih besar dari 3
for (int i = 3; i > 2; i = i + 1) { 
  System.out.println("Forever...");
}
// i tidak diperbarui
for (int i = 0; i < 10; i = i - 0) {
  System.out.println("And ever...");
Java Menengah

break

  • Untuk keluar dari loop lebih awal
  • Bukan praktik yang baik, gunakan bijak
    • while loop biasanya lebih baik
for (int i = 0; i < 5; i++) {
  System.out.println(i);
  if (i == 1) {
    break; // Menghentikan loop saat i bernilai 1
  }
}
0
1
Java Menengah

Ringkasan

// Contoh for loop
// Termasuk keyword break
String word = "Hey";

for (int i = 0; i < word.length(); i++){
  System.out.println(word.charAt(i));
  if (i == 2) {
    System.out.println("!");
    break;
  }
  System.out.println("-");
}
  • i: iterator
  • word: iterable
  • for berjalan sejumlah iterasi yang sudah ditentukan
    • Berjalan dari 0 sampai akhir word
    • Kecuali kita gunakan keyword break
H
-
e
-
y
!
Java Menengah

Ayo berlatih!

Java Menengah

Preparing Video For Download...