Main Menu

Belajar Rust Dasar #4: Operator


👍 0 ❤️ 0 💡 0 🔥 0 🙌 0 🥳 0
Belajar Rust Dasar #4: Operator

Halo teman-teman semuanya, setelah sebelumnya kita belajar tentang variabel, mutability, konstanta, dan shadowing di Rust, pada artikel kali ini kita akan membahas tentang operator.

Operator adalah simbol khusus yang digunakan untuk melakukan operasi terhadap nilai atau variabel, mulai dari perhitungan matematika, perbandingan antar nilai, logika boolean, manipulasi bit, hingga pembuatan range. Dengan memahami operator, kita bisa menulis ekspresi yang lebih kompleks dan logika program yang lebih kuat.

Rust sendiri mendukung berbagai jenis operator yang mirip dengan bahasa pemrograman lain seperti C, C++, atau Java, tetapi dengan aturan yang lebih aman karena dicek saat compile time. Mari kita bahas satu per satu.

Operator Aritmatika

Operator Contoh Penjelasan
+ a + b Menjumlahkan dua nilai
- a - b Mengurangi nilai kiri dengan nilai kanan
* a * b Mengalikan dua nilai
/ a / b Membagi nilai kiri dengan nilai kanan
% a % b Menghasilkan sisa bagi dari pembagian
fn main() {
    let a = 10;
    let b = 3;

    println!("Penjumlahan: {}", a + b);
    println!("Pengurangan: {}", a - b);
    println!("Perkalian: {}", a * b);
    println!("Pembagian: {}", a / b);
    println!("Modulo: {}", a % b);
}

Operator Perbandingan

Operator Contoh Penjelasan
== x == y Sama dengan
!= x != y Tidak sama dengan
< x < y Lebih kecil dari
> x > y Lebih besar dari
<= x <= y Lebih kecil atau sama dengan
>= x >= y Lebih besar atau sama dengan
fn main() {
    let x = 5;
    let y = 10;

    println!("x == y: {}", x == y);
    println!("x != y: {}", x != y);
    println!("x < y: {}", x < y);
    println!("x > y: {}", x > y);
    println!("x <= y: {}", x <= y);
    println!("x >= y: {}", x >= y);
}

Operator Logika

Operator Contoh Penjelasan
&& a && b Logika AND (dan)
|| a || b Logika OR (atau)
! !a Logika NOT (kebalikan)
fn main() {
    let a = true;
    let b = false;

    println!("a AND b: {}", a && b);
    println!("a OR b: {}", a || b);
    println!("NOT a: {}", !a);
}

Operator Penugasan

Operator Contoh Penjelasan
= x = 5 Memberikan nilai ke variabel
+= x += 3 Menambahkan nilai ke variabel (x = x + 3)
-= x -= 2 Mengurangi nilai variabel (x = x - 2)
*= x *= 2 Mengalikan nilai variabel (x = x * 2)
/= x /= 2 Membagi nilai variabel (x = x / 2)
%= x %= 2 Mengambil sisa bagi (x = x % 2)
fn main() {
    let mut x = 5;
    x += 3;
    x *= 2;

    println!("Nilai x: {}", x);
}

Operator Bitwise

Operator Contoh Penjelasan
& a & b AND bit
| a | b
^ a ^ b XOR bit
<< a << 1 Geser bit ke kiri
>> b >> 1 Geser bit ke kanan
fn main() {
    let a = 0b1010; // 10
    let b = 0b1100; // 12

    println!("AND: {:b}", a & b);  
    println!("OR: {:b}", a | b);   
    println!("XOR: {:b}", a ^ b);  
    println!("Shift Left: {:b}", a << 1);
    println!("Shift Right: {:b}", b >> 2);
}

Operator Range

Operator Contoh Penjelasan
.. 1..5 Range eksklusif (dari 1 sampai sebelum 5)
..= 1..=5 Range inklusif (dari 1 sampai 5, termasuk 5)
fn main() {
    for i in 1..5 {
        println!("Eksklusif: {}", i);
    }

    for i in 1..=5 {
        println!("Inklusif: {}", i);
    }
}

Kesimpulan

Pada artikel ini kita sudah belajar berbagai macam operator di Rust .Operator ini menjadi dasar untuk menulis ekspresi dan logika program. Pada artikel berikutnya, kita akan membahas tentang Control Flow di Rust, yaitu bagaimana mengatur alur eksekusi program dengan if, match, loop, dan sebagainya.

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