🧠 if
Expression (Percabangan)
Rust menggunakan if
untuk mengevaluasi kondisi, mirip dengan bahasa lain. Tapi, if
di Rust adalah expression, artinya bisa mengembalikan nilai.
Contoh Dasar:
let number = 5;
if number < 10 {
println!("Angka kurang dari 10");
} else if number > 10 {
println!("Angka lebih dari 10");
} else {
println!("Angka adalah 10");
}
Menggunakan if
untuk Assignment:
let condition = true;
let number = if condition { 5 } else { 6 }; // number = 5
println!("Nilainya adalah: {}", number);
⚠️ Semua cabang
if
harus mengembalikan tipe data yang sama, kalau tidak akan error.
🔁 Looping
Rust memiliki tiga jenis loop utama:
1. loop
→ Loop tak terbatas (infinite loop)
loop {
println!("Berulang terus!");
break; // keluar dari loop
}
- Bisa mengembalikan nilai:
let result = loop {
break 42;
};
println!("Hasil: {}", result); // 42
2. while
→ Loop selama kondisi benar
let mut number = 3;
while number != 0 {
println!("{}!", number);
number -= 1;
}
println!("Selesai!");
3. for
→ Loop untuk data yang bisa diiterasi (array, range, dll)
Contoh dengan range:
for number in 1..4 {
println!("{}", number); // 1, 2, 3 (tidak termasuk 4)
}
Contoh dengan array:
let a = [10, 20, 30];
for item in a {
println!("Item: {}", item);
}
✅
for
adalah cara paling aman dan umum digunakan karena tidak rawan error sepertiwhile
.
Bonus: Loop dengan enumerate
let items = ["apel", "pisang", "mangga"];
for (index, item) in items.iter().enumerate() {
println!("{}: {}", index, item);
}
✅ Perbandingan Cepat
Jenis | Kapan digunakan |
---|---|
if |
Mengecek kondisi, memilih cabang kode |
loop |
Loop tak terbatas, cocok untuk break manual |
while |
Loop dengan kondisi, cocok untuk input atau state tertentu |
for |
Iterasi array, range, atau iterable lainnya |