0Pricing
Learn Rust Coding · Pelajaran

let dan Mutabilitas

Binding dan mutabilitas

let dan Mutabilitas adalah pelajaran Learn Rust Coding gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Learn Rust Coding, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Learn Rust Coding mencakup 4 pelajaran total.

Mengikat Nilai dengan let

Dalam Rust, Anda membuat variabel dengan kata kunci let. Ini mengikat nama ke suatu nilai.

Secara bawaan, setiap pengikatan bersifat tidak dapat diubah — setelah Anda memberinya nilai, Anda tidak dapat mengubahnya.

fn main() {
    let x = 5;
    println!("The value of x is: {}", x);
}

Tidak Dapat Diubah Secara Bawaan

Rust sengaja membuat variabel tidak dapat diubah. Hal ini mencegah perubahan yang tidak disengaja dan membuat kode lebih mudah dipahami.

Mencoba menetapkan ulang pengikatan yang tidak dapat diubah menyebabkan kesalahan kompilasi, bukan kerusakan saat waktu proses.

  • let x = 5; kemudian x = 6; tidak akan berhasil dikompilasi.
fn main() {
    let x = 5;
    // x = 6; // this would cause a compile error
    println!("x stays {}", x);
}

Membuat Variabel Dapat Diubah

Saat Anda perlu mengubah suatu nilai, tambahkan kata kunci mut. Ini menandai pengikatan sebagai dapat diubah.

Sekarang Anda dapat menetapkan ulang nilainya sebanyak yang diinginkan.

fn main() {
    let mut count = 0;
    count = count + 1;
    count += 1;
    println!("count is {}", count);
}

Inferensi Tipe

Rust biasanya menentukan tipe variabel dari nilainya. Ini disebut inferensi tipe.

let x = 5; secara otomatis memberikan tipe i32 kepada x.

fn main() {
    let n = 42;      // inferred as i32
    let pi = 3.14;   // inferred as f64
    println!("{} and {}", n, pi);
}

Anotasi Tipe

Anda juga dapat menyatakan tipe secara eksplisit dengan titik dua dan nama tipe. Ini disebut anotasi tipe.

Anotasi berguna saat kompiler tidak dapat menentukan tipe, atau untuk memperjelas kode.

fn main() {
    let age: u32 = 30;
    let price: f64 = 9.99;
    println!("age {} price {}", age, price);
}

Konstanta

const selalu tidak dapat diubah dan harus memiliki anotasi tipe. Nilainya harus diketahui saat kompilasi.

Sesuai konvensi, konstanta menggunakan SCREAMING_SNAKE_CASE.

fn main() {
    const MAX_POINTS: u32 = 100_000;
    println!("Max is {}", MAX_POINTS);
}

const vs let

Perbedaan utama antara const dan let:

  • const tidak pernah dapat menjadi mut.
  • const memerlukan anotasi tipe.
  • const harus berupa ekspresi konstan saat kompilasi.
  • Nilai let dapat dihitung saat waktu proses.
fn main() {
    const SECONDS_PER_HOUR: u32 = 60 * 60;
    let hours = 3;
    println!("{} seconds", SECONDS_PER_HOUR * hours);
}

Mengubah Nilai dalam Perulangan

Variabel yang dapat diubah umum digunakan dalam perulangan saat suatu nilai terus terakumulasi.

Di sini kita menjumlahkan angka menggunakan akumulator mut.

fn main() {
    let mut total = 0;
    for i in 1..=5 {
        total += i;
    }
    println!("Sum is {}", total);
}

Garis Bawah untuk Nilai yang Tidak Digunakan

Jika Anda mengikat suatu nilai tetapi tidak pernah menggunakannya, Rust akan memberikan peringatan. Awali nama dengan garis bawah untuk menyembunyikan peringatan tersebut.

  • let _unused = 10; memberi tahu kompiler bahwa hal ini memang disengaja.
fn main() {
    let _temp = 99;
    let used = 1;
    println!("{}", used);
}

Beberapa Pengikatan

Anda dapat mendeklarasikan beberapa variabel pada baris terpisah, masing-masing dengan let.

Setiap pengikatan berdiri sendiri dan tidak dapat diubah, kecuali ditandai dengan mut.

fn main() {
    let name = "Rust";
    let year = 2010;
    let mut version = 1;
    version += 1;
    println!("{} born {} v{}", name, year, version);
}

Mengapa Sifat Tidak Dapat Diubah Membantu

Sifat tidak dapat diubah merupakan fitur keamanan. Saat kompiler mengetahui bahwa suatu nilai tidak dapat berubah, kompiler dapat memberikan jaminan yang lebih kuat dan mencegah seluruh kategori kutu.

Gunakan perubahan nilai dengan mut hanya jika benar-benar diperlukan.

fn main() {
    let config = "production";
    // config is guaranteed not to change
    println!("Running in {}", config);
}

Pemeriksaan Singkat

Kata kunci apa yang membuat variabel Rust dapat diubah?

Rangkuman

Anda telah mempelajari dasar-dasar pengikatan dalam Rust:

  • let mengikat nama ke suatu nilai, yang secara bawaan tidak dapat diubah.
  • mut membuat pengikatan dapat diubah.
  • Rust menyimpulkan tipe, tetapi Anda dapat menambahkan anotasi dengan :.
  • const ditentukan saat kompilasi, selalu tidak dapat diubah, dan memerlukan tipe.
fn main() {
    let mut score: u32 = 0;
    const BONUS: u32 = 10;
    score += BONUS;
    println!("Final score: {}", score);
}

Pertanyaan yang Sering Diajukan

Apakah pelajaran “let dan Mutabilitas” gratis?

Ya — teks lengkap “let dan Mutabilitas” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Learn Rust Coding, upgrade ke CoddyKit PRO. Kursus Learn Rust Coding mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “let dan Mutabilitas”?

Binding dan mutabilitas Kamu berlatih Learn Rust Coding dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Learn Rust Coding?

Tidak diperlukan pengalaman sebelumnya. Learn Rust Coding di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.

Berapa lama pelajaran “let dan Mutabilitas” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Learn Rust Coding ini?

Ya. Setiap pelajaran Learn Rust Coding menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. let dan Mutabilitas
  2. Tipe Skalar
  3. Tipe Majemuk
  4. Shadowing
← Kembali ke Learn Rust Coding