Main Menu

Belajar Rust Dasar #3: Variable & Mutability


👍 0 ❤️ 0 💡 0 🔥 0 🙌 0 🥳 0
Belajar Rust Dasar #3: Variable & Mutability

Halo teman-teman semuanya, setelah pada artikel sebelumnya kita belajar tentang tipe data di Rust, kali ini kita akan membahas mengenai variable dan konsep mutability. Topik ini sangat penting karena Rust memiliki aturan unik dalam pengelolaan variabel, berbeda dengan bahasa lain.

Apa Itu Variable?

Variable adalah tempat untuk menyimpan nilai yang bisa digunakan dalam program. Di Rust, variabel dideklarasikan menggunakan keyword let.

Contoh:

fn main() {
    let name = "Rust";
    println!("Hello, {}", name);
}

Pada contoh di atas, kita membuat variabel name dengan nilai "Rust". Secara default, variabel di Rust bersifat immutable.

Immutable Variable

Immutable berarti nilai variabel tidak bisa diubah setelah diinisialisasi. Jika kita coba mengubahnya, maka akan muncul error saat compile.

fn main() {
    let x = 10;
    x = 20; // error: cannot assign twice to immutable variable
}

Hal ini membuat kode lebih aman dan mencegah bug yang sulit dilacak akibat perubahan nilai yang tidak terduga.

Mutable Variable

Jika kita memang ingin variabel bisa diubah, gunakan keyword mut.

fn main() {
    let mut counter = 0;
    counter = counter + 1;
    println!("Counter: {}", counter);
}

Dengan menambahkan mut, variabel counter bisa diubah nilainya.

Constant

Selain let, Rust juga memiliki const untuk mendefinisikan konstanta. Nilai const harus ditentukan saat compile time dan tidak bisa diubah. Biasanya ditulis dengan huruf kapital.

const MAX_POINTS: u32 = 100_000;

fn main() {
    println!("Max: {}", MAX_POINTS);
}

Perbedaan dengan let:

  • const harus didefinisikan dengan tipe data eksplisit.
  • const tidak bisa menggunakan nilai hasil perhitungan runtime.
  • const bisa didefinisikan di luar fungsi.

Shadowing

Rust juga mendukung shadowing, yaitu mendefinisikan ulang variabel dengan nama yang sama. Variabel lama akan “tertutupi” oleh variabel baru.

fn main() {
    let x = 5;
    let x = x + 1; // shadowing
    let x = x * 2;
    println!("Nilai x: {}", x); // 12
}

Perbedaan shadowing dengan mut:

  • Dengan mut, kita benar-benar mengubah nilai variabel yang sama.
  • Dengan shadowing, kita membuat variabel baru dengan nama yang sama.

Kesimpulan

Pada artikel ini, kita sudah belajar bagaimana Rust mengatur variabel dengan konsep immutable secara default, cara membuat mutable variable dengan mut, mendefinisikan konstanta dengan const, serta fitur shadowing untuk mendeklarasikan ulang variabel. Di artikel berikutnya, kita akan membahas tentang Operator di Rust.

Terima Kasih


Fika Ridaul Maulayya
Full-Stack Developer, Content Creator and CO-Founder SantriKoding.com

Suka dengan tulisan di SantriKoding? Kamu bisa memberikan dukungan dengan berdonasi atau bagikan konten ini di sosial media. Terima kasih atas dukungan Anda!

KEBIJAKAN KOMENTAR

Saat memberikan komenatar silahkan memberikan informasi lengkap tentang error, seperti: screenshot, link kode, dll. Baca aturan komentar kami