🧠 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 seperti while.


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

Image description