🔄 Perulangan di Java

🔁Apa itu For Loop?

For Loop adalah perulangan yang digunakan ketika kita tahu berapa kali perulangan akan dijalankan. For loop sangat cocok untuk iterasi dengan jumlah yang pasti, seperti mengakses elemen array atau menghitung dari 1 sampai 10.

Kapan Pakai For Loop? Ketika kita tahu jumlah iterasi, seperti: menampilkan angka 1-100, mengakses semua elemen array, atau membuat pola bintang.

📐Struktur For Loop

Format for loop di Java:

java
for (inisialisasi; kondisi; increment/decrement) {
    // kode yang akan diulang
}

Penjelasan:

  • Inisialisasi: Menentukan nilai awal (contoh: int i = 0)
  • Kondisi: Perulangan berjalan selama kondisi true (contoh: i < 10)
  • Increment/Decrement: Mengubah nilai variabel setiap iterasi (contoh: i++)

📝Contoh Dasar For Loop

1. Menghitung 1 sampai 5

java
// Menampilkan angka 1 sampai 5
for (int i = 1; i <= 5; i++) {
    System.out.println(i);
}

/* Output:
1
2
3
4
5
*/

2. Menghitung Mundur

java
// Countdown dari 10 ke 1
for (int i = 10; i >= 1; i--) {
    System.out.println(i);
}
System.out.println("Selesai!");

/* Output:
10
9
8
...
1
Selesai!
*/

3. Increment dengan Step

java
// Angka genap dari 0 sampai 10
for (int i = 0; i <= 10; i += 2) {
    System.out.println(i);
}

/* Output:
0
2
4
6
8
10
*/

🎮 Demo Interaktif: For Loop

🎮

Simulator For Loop

Atur nilai start, end, dan step untuk melihat hasil perulangan

Kode Java:

for (int i = 1; i <= 5; i += 1) {
    System.out.println(i);
}

📦For Loop dengan Array

For loop sangat berguna untuk mengakses semua elemen array.

java
// Array buah-buahan
String[] buah = {"Apel", "Jeruk", "Mangga", "Pisang", "Anggur"};

// Akses semua elemen dengan for loop
for (int i = 0; i < buah.length; i++) {
    System.out.println("Buah ke-" + (i+1) + ": " + buah[i]);
}

/* Output:
Buah ke-1: Apel
Buah ke-2: Jeruk
Buah ke-3: Mangga
Buah ke-4: Pisang
Buah ke-5: Anggur
*/

Enhanced For Loop (For-Each)

Java memiliki for loop khusus untuk array yang lebih sederhana.

java
String[] buah = {"Apel", "Jeruk", "Mangga", "Pisang"};

// For-each loop (lebih simple)
for (String namaBuah : buah) {
    System.out.println(namaBuah);
}

// Contoh dengan angka
int[] nilai = {85, 90, 78, 92, 88};
int total = 0;

for (int n : nilai) {
    total += n;
}

double rataRata = (double) total / nilai.length;
System.out.println("Rata-rata: " + rataRata);  // 86.6

⏱️🎮 Demo: Countdown Timer

🎮

Countdown dari 10

Simulasi countdown menggunakan for loop

10

🔄Nested For Loop (For Bersarang)

For loop di dalam for loop, digunakan untuk pola 2 dimensi atau tabel.

java
// Membuat pola bintang segitiga
for (int i = 1; i <= 5; i++) {
    for (int j = 1; j <= i; j++) {
        System.out.print("* ");
    }
    System.out.println();  // Pindah baris
}

/* Output:
* 
* * 
* * * 
* * * * 
* * * * * 
*/

Tabel Perkalian

java
// Tabel perkalian 5x5
for (int i = 1; i <= 5; i++) {
    for (int j = 1; j <= 5; j++) {
        System.out.print((i * j) + "\t");  // \t = tab
    }
    System.out.println();
}

/* Output:
1    2    3    4    5
2    4    6    8    10
3    6    9    12   15
4    8    12   16   20
5    10   15   20   25
*/

🎮 Demo: Pola Bintang

🎮

Generator Pola Segitiga

Ubah ukuran untuk melihat pola bintang yang berbeda

⭐⭐
⭐⭐⭐
⭐⭐⭐⭐
⭐⭐⭐⭐⭐

Kode Java:

for (int i = 1; i <= 5; i++) {
    for (int j = 1; j <= i; j++) {
        System.out.print("⭐");
    }
    System.out.println();
}

🚦Break dan Continue

Break (Berhenti Total)

break menghentikan perulangan sepenuhnya.

java
// Cari angka 7, jika ketemu berhenti
for (int i = 1; i <= 10; i++) {
    System.out.println(i);
    
    if (i == 7) {
        System.out.println("Ketemu angka 7!");
        break;  // Berhenti di sini
    }
}

/* Output:
1
2
3
4
5
6
7
Ketemu angka 7!
*/

Continue (Skip Iterasi)

continue melewati iterasi saat ini dan lanjut ke iterasi berikutnya.

java
// Tampilkan angka ganjil saja (lewati yang genap)
for (int i = 1; i <= 10; i++) {
    if (i % 2 == 0) {
        continue;  // Lewati angka genap
    }
    System.out.println(i);
}

/* Output:
1
3
5
7
9
*/

📝 Ringkasan For Loop

  • ✅ Digunakan ketika tahu jumlah iterasi yang pasti
  • ✅ Format: for (init; kondisi; update) { }
  • ✅ Sangat cocok untuk array dan pola berulang
  • ✅ Ada enhanced for loop untuk array: for (Type item : array)
  • ✅ Gunakan break untuk berhenti, continue untuk skip
  • ✅ Nested for loop untuk pola 2D atau tabel