04 - Alur Kontrol perulangan Loops
Pelajari cara mengulang kode secara efisien menggunakan loop di Java
Loop memungkinkanmu mengulang kode tanpa harus menulisnya berulang-ulang. Ini sangat penting untuk memproses koleksi data, menghasilkan dunia game, dan memperbarui objek game.
While Loop/Perulangan While
Mengulang kode selama kondisi bernilai benar/true:
int countdown = 5;
while (countdown > 0) {
System.out.println(countdown);
countdown--;
}
System.out.println("Meluncur!");Struktue
while (condition) {
// kode untuk diulang
}Selalu pastikan kondisi loop-mu pada akhirnya akan menjadi salah/false, atau programmu akan berjalan selamanya!
int x = 0;
while (x < 10) {
System.out.println("Macet!");
// lupa menaikan nilai x!
}Do-While Loop
Seperti while loop, tapi selalu berjalan setidaknya satu kali:
int health = 0;
do {
System.out.println("Mencoba respawn...");
health = 100;
} while (health <= 0);For Loop
Terbaik saat kamu tahu berapa kali harus mengulang:
for (int i = 1; i <= 5; i++) {
System.out.println("Level " + i);
}Struktur
for (inisialisasi; kondisi; update) {
// code untuk diulang
}for (int i = 0; i < 10; i++) {
// ^ ^ ^
// Mulai Berhenti Langkah
}- Inisialisasi: int i = 0 - Berjalan sekali di awal
- Kondisi: i < 10 - Dicek sebelum setiap putaran loop
- Update: i++ - Berjalan setelah setiap putaran loop
Pernyataan break
Kamu bisa keluar dari loop lebih awal dengan break:
for (int i = 1; i <= 10; i++) {
if (i == 6) {
break; // Keluar loop saat i adalah 6
}
System.out.println(i);
}Pernyataan Continue
Lompati ke iterasi berikutnya dengan continue:
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) {
continue; // Lewati bilangan genap
}
System.out.println(i); // Hanya mencetak bilangan ganjil
}Loop Bersarang/Nested Loops
Kamu bisa menaruh loop di dalam loop lainnya:
for (int i = 1; i <= 3; i++) {
for (int j = 1; j <= 2; j++) {
System.out.println("i: " + i + ", j: " + j);
}
}Hati-hati dengan nested loop! Mereka bisa memperlambat mod-mu secara signifikan.
// Ini berjalan 1,000,000 kali!
for (int i = 0; i < 1000; i++) {
for (int j = 0; j < 1000; j++) {
// Code disini
}
}Cobalah hindari nested loop yang dalam saat memproses data dalam jumlah besar.