Modul 3 — Operator

Pelajari berbagai operator di Java aritmatika, penugasan, increment decrement, relasional, logika, dan ternary.
PemulaOperatorEkspresiJava 21 LTS

🧮 Modul 3 — Operator

Operator adalah simbol khusus yang digunakan untuk melakukan operasi pada satu atau lebih operand (nilai atau variabel). Java menyediakan berbagai jenis operator untuk memanipulasi data.

Tujuan Modul: Setelah mempelajari modul ini, Anda akan mampu menggunakan operator aritmatika, penugasan, increment/decrement, relasional, logika, dan ternary dalam program Java.

📋 Jenis-Jenis Operator

Kita akan membahas 6 kategori operator utama di Java. Klik tab di bawah untuk melihat masing-masing kategori.

Operator aritmatika digunakan untuk operasi matematika dasar.

OperatorNamaContohHasil
+Penjumlahan / Concatenation5 + 3
"Halo" + " Java"
8
"Halo Java"
-Pengurangan10 - 46
*Perkalian3 * 721
/Pembagian10 / 3
10.0 / 3
3 (bulat!)
3.333...
%Modulo (sisa bagi)10 % 31
Perhatian — Integer Division!
10 / 3 = 3 (bukan 3.33) karena kedua operand adalah int.
Solusi:10.0 / 3 atau (double) 10 / 3
Modulo berguna untuk:
  • Cek genap/ganjil: x % 2 == 0 → genap
  • Siklus berulang: jam % 24, menit % 60
Contoh Aritmatika
int a = 10, b = 3;
System.out.println(a + b); // 13
System.out.println(a - b); // 7
System.out.println(a * b); // 30
System.out.println(a / b); // 3  ← bukan 3.33!
System.out.println(a % b); // 1  ← sisa dari 10/3

Operator penugasan digunakan untuk memberi nilai ke variabel, sering dikombinasikan dengan operasi lain.

OperatorContohSetara Dengan
=x = 10;x = 10
+=x += 5;x = x + 5
-=x -= 3;x = x - 3
*=x *= 2;x = x * 2
/=x /= 4;x = x / 4
%=x %= 3;x = x % 3
Contoh Penugasan
int x = 10;
x += 5; // x = x + 5 → 15
x *= 2; // x = 15 * 2 → 30
System.out.println(x); // 30

Operator ++ dan -- digunakan untuk menambah atau mengurangi nilai variabel dengan 1. Ada dua bentuk: postfix (x++) dan prefix (++x).

Postfix vs Prefix
int x = 5;
// POST-increment: pakai nilai dulu, baru tambah
System.out.println(x++); // Cetak 5, lalu x jadi 6
System.out.println(x);   // 6

int y = 5;
// PRE-increment: tambah dulu, baru pakai
System.out.println(++y); // y jadi 6 dulu, cetak 6
System.out.println(y);   // 6
Perbedaan postfix dan prefix penting saat digunakan dalam ekspresi yang lebih kompleks.

Operator relasional digunakan untuk membandingkan dua nilai. Hasilnya selalu boolean (true atau false).

OperatorNamaContohHasil
==Sama dengan5 == 5true
!=Tidak sama dengan5 != 6true
>Lebih besar7 > 3true
<Lebih kecil2 < 8true
>=Lebih besar atau sama5 >= 5true
<=Lebih kecil atau sama3 <= 5true
Kesalahan PALING SERING pemula — == vs =:
  • x = 5mengisi nilai (assignment)
  • x == 5membandingkan nilai (menghasilkan true/false)
if (x = 5) { ... }  // ← BUG! Seharusnya: if (x == 5)

Operator logika digunakan untuk mengkombinasikan ekspresi boolean.

OperatorNamaAturanContoh
&&AND (DAN)true hanya jika KEDUA sisi true(5>3) && (8>2)true
||OR (ATAU)true jika MINIMAL SATU sisi true(5>10) || (8>2)true
!NOT (BUKAN)Membalik nilai boolean!(5>3)false

Tabel Kebenaran:

ABA&&BA||B!A
truetruetruetruefalse
truefalsefalsetruefalse
falsetruefalsetruetrue
falsefalsefalsefalsetrue
Contoh Logika
int umur = 17;
boolean punyaSIM = false;
boolean bolehBerkendara = (umur >= 17) && punyaSIM;
System.out.println(bolehBerkendara); // false (umur OK, tapi tidak punya SIM)

Operator ternary adalah operator bersyarat satu baris yang menggantikan if-else sederhana.

// Format: kondisi ? nilai_jika_true : nilai_jika_false
int nilai = 75;
String status = (nilai >= 70) ? "Lulus" : "Tidak Lulus";
System.out.println(status); // Lulus
Operator ternary cocok untuk pengkondisian singkat. Namun, hindari penggunaan bersarang yang berlebihan karena dapat mengurangi keterbacaan.

Ternary bersarang (hindari jika lebih dari 2 level):

String grade = (nilai >= 90) ? "A" : (nilai >= 80) ? "B" : (nilai >= 70) ? "C" : "D";

::


🧪 Latihan Praktik

Buat program Java yang:

  1. Meminta pengguna memasukkan dua angka bulat.
  2. Menampilkan hasil penjumlahan, pengurangan, perkalian, pembagian (dalam bentuk desimal), dan modulo.
  3. Menampilkan apakah angka pertama lebih besar dari angka kedua, dan apakah kedua angka genap atau ganjil.
  4. Menggunakan operator ternary untuk menentukan apakah hasil penjumlahan genap atau ganjil.

Contoh interaksi:

Masukkan angka pertama: 10
Masukkan angka kedua: 3

Hasil:
10 + 3 = 13
10 - 3 = 7
10 * 3 = 30
10 / 3 = 3.3333333333333335
10 % 3 = 1

10 > 3 ? true
10 genap? true
3 genap? false

Jumlah (13) adalah ganjil.
Gunakan Scanner untuk input dari pengguna, dan System.out.printf() untuk format output yang rapi.

📺 Video Penjelasan

Tonton video berikut untuk penjelasan lebih mendalam tentang operator di Java (20 menit):


✨ Kesimpulan

Apa yang Telah Dipelajari

  • ✅ Operator aritmatika dan masalah integer division
  • ✅ Operator penugasan gabungan
  • ✅ Perbedaan postfix dan prefix increment/decrement
  • ✅ Operator relasional dan perbedaan == vs =
  • ✅ Operator logika (AND, OR, NOT)
  • ✅ Operator ternary untuk pengkondisian singkat

Selanjutnya

Modul 4: Struktur Kontrol (Percabangan)if, else if, switch, dan logika percabangan.

Selamat! Modul 3 selesai. Praktikkan operator-operator ini dalam kode sehari-hari. 🎉