Tipe Data & Type Casting di Rust
Penjelasan
Rust bertipe statis dengan type inference kuat — compiler bisa menyimpulkan tipe dari nilai yang diberikan, tapi tetap dicek ketat saat kompilasi. Tipe data dasar: i32 (integer 32-bit, default untuk angka bulat), f64 (float 64-bit, default untuk desimal), bool, dan char. Type casting dilakukan dengan keyword as.
Contoh Konsep
fn main() {
let umur_teks = "17";
let umur_angka: i32 = umur_teks.parse().unwrap(); // string ke i32
println!("{}", umur_angka); // 17
let harga: f64 = 19.99;
let harga_dibulatkan = harga as i32; // f64 ke i32, casting eksplisit
println!("{}", harga_dibulatkan); // 19
}
Praktikum
Buat variabel let input = "25" (string). Ubah jadi i32 dengan parse().unwrap(), kalikan dengan 2, lalu tampilkan hasilnya dengan println!().
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
parse() mengembalikan Result (dibahas lebih dalam di materi Result & Error Handling), bukan langsung nilainya — .unwrap() dipakai untuk "membuka paksa" nilai suksesnya, tapi akan membuat program panic (crash) kalau parsing-nya gagal. Untuk kode production, sebaiknya cek hasilnya dulu, bukan langsung unwrap().