Skip to main content

Operator dalam Java

Operator dalam Java adalah simbol-simbol khusus yang digunakan untuk melakukan operasi pada variabel dan nilai.

Berikut adalah pembagian operator di Java yang paling sering digunakan:

1️⃣ Operator Aritmatika

Digunakan untuk melakukan operasi matematika dasar.

OperatorNamaContoh
+Penjumlahan10 + 5 = 15
-Pengurangan10 - 5 = 5
*Perkalian10 * 5 = 50
/Pembagian10 / 5 = 2
%Modulo (Sisa Bagi)10 % 3 = 1

Contoh :

int a = 10;
int b = 3;

System.out.println("10 + 3 = " + (a + b)); // 13
System.out.println("10 - 3 = " + (a - b)); // 7
System.out.println("10 * 3 = " + (a * b)); // 30
System.out.println("10 / 3 = " + (a / b)); // 3 (Hasil bulat karena tipe int)
System.out.println("10 % 3 = " + (a % b)); // 1 (Sisa bagi)

2️⃣ Operator Penugasan (Assignment)

Digunakan untuk memberikan atau mengisi nilai ke dalam variabel.

OperatorContohSama Dengan
=x = 5x = 5
+=x += 3x = x + 3
-=x -= 3x = x - 3
*=x *= 3x = x * 3
/=x /= 3x = x / 3
%=x %= 3x = x % 3

Contoh :

int x = 5;

x += 5; // Sama dengan x = x + 5 -> x sekarang 10
x -= 2; // Sama dengan x = x - 2 -> x sekarang 8
x *= 2; // Sama dengan x = x * 2 -> x sekarang 16

System.out.println("Nilai akhir x: " + x);

3️⃣ Operator Perbandingan (Relational)

Digunakan untuk membandingkan dua nilai. Hasil dari operasi ini selalu berupa boolean (true atau false).

OperatorNamaContoh
==Sama dengan5 == 5 (true)
!=Tidak sama dengan5 != 3 (true)
>Lebih besar dari5 > 8 (false)
<Lebih kecil dari5 < 8 (true)
>=Lebih besar atau sama dengan5 >= 5 (true)
<=Lebih kecil atau sama dengan5 <= 5 (true)

Contoh :

int p = 10;
int q = 20;

System.out.println(p == q); // false
System.out.println(p != q); // true
System.out.println(p > q); // false
System.out.println(p <= q); // true

4️⃣ Operator Logika (Boolean)

Digunakan untuk menentukan logika antara variabel atau nilai. Biasanya digunakan pada percabangan (if).

OperatorNamaDeskripsi
&&Logical ANDBernilai true jika keduanya benar.
||Logical ORBernilai true jika salah satu benar
!Logical NOTMembalikkan hasil (true jadi false).

Contoh :

boolean punyaKunci = true;
boolean punyaPassword = false;

// AND (&&): Harus keduanya true agar hasilnya true
System.out.println(punyaKunci && punyaPassword); // false

// OR (||): Salah satu saja true, maka hasilnya true
System.out.println(punyaKunci || punyaPassword); // true

// NOT (!): Membalikkan keadaan
System.out.println(!punyaKunci); // false

Tabel Kebenaran (Truth Table)

Misalkan ada dua variabel A dan B:

ABA && B (AND)A || B (OR)
truetruetruetrue
truefalsefalsetrue
falsetruefalsetrue
falsefalsefalsefalse

Contoh:

public class PerbandinganOperator {
public static void main(String[] args) {
boolean a = true;
boolean b = false;

// Logical
System.out.println("AND: " + (a && b)); // false
System.out.println("OR : " + (a || b)); // true

// Bitwise (Angka)
int x = 5; // 0101
int y = 3; // 0011
System.out.println("Bitwise AND: " + (x & y)); // 1
System.out.println("Bitwise OR : " + (x | y)); // 7
}
}

5️⃣ Operator Unary (Increment & Decrement)

Digunakan untuk menambah atau mengurangi nilai variabel sebanyak 1.

  • ++x atau x++ : Menambah nilai 1 (Increment).
  • --x atau x-- : Mengurangi nilai 1 (Decrement).
  • - : Negative.
  • + : Positive.
  • ! : Boolean kebalikan.
info

Catatan: Ada perbedaan antara Prefix (++x) dan Postfix (x++). Prefix mengubah nilai sebelum digunakan, sedangkan Postfix menggunakan nilai lama dulu baru kemudian mengubahnya.

Contoh :

int i = 5;

// Postfix: Gunakan nilai lama, lalu tambah 1
System.out.println(i++); // Output: 5 (i sekarang jadi 6)

// Prefix: Tambah 1 dulu, baru gunakan nilainya
System.out.println(++i); // Output: 7 (i dari 6 ditambah 1 dulu)

6️⃣ Operator Ternary

Ini adalah cara singkat untuk menulis if-else. Strukturnya menggunakan simbol ? dan :.

Contoh :

int nilai = 80;
String hasil = (nilai >= 75) ? "Lulus" : "Tidak Lulus";
System.out.println(hasil); // Output: Lulus

7️⃣ Presedensi Operator (Urutan Operasi)

Sama seperti matematika, Java memiliki aturan urutan mana yang dikerjakan duluan.

  1. Kurung ()
  2. Increment/Decrement ++,--
  3. Perkalian/Pembagian *, /, %
  4. Penjumlahan/Pengurangan +, -
  5. Perbandingan <, >, <=, >=
  6. Logika &&, ||

Contoh :

public class BelajarOperator {
public static void main(String[] args) {
int a = 10;
int b = 20;

// Menggunakan Aritmatika dan Perbandingan
boolean apakahLebihBesar = (a + 5) > b;

System.out.println("Hasil: " + apakahLebihBesar); // Output: false (15 > 20)
}
}

8️⃣ Bitwise Operators

Meskipun jarang digunakan di level pemula, operator ini bekerja pada level bit (biner 0 dan 1).

OperatorNamaContoh (5 & 3)
&AND0101 & 0011 = 0001 (1)
|OR0101 | 0101 = 0111 (7)
^XOR0101 ^ 0011 = 0110 (6)
~NOTMembalikkan semua bit
<<Shift kiriMenggeser bit ke kiri (sama dengan dikali 2)
>>Shift kananMenggeser bit ke kanan (sama dengan dibagi 2)

Contoh Kode:

public class Main {
public static void main(String[] args) {
int a = 5; // biner: 0101
int b = 3; // biner: 0011

int hasil = a | b; // Operasi Bitwise OR

System.out.println("Hasil dari 5 | 3 adalah: " + hasil);
// Output: Hasil dari 5 | 3 adalah: 7
}
}
  1. Contoh Left Shift (<<): 5 << 2
    • Biner 5: 00000101
    • Geser 2 ke kiri: 00010100
    • Hasil Desimal: 20 (Karena 5 * 2^2 = 5 * 4 = 20)
  2. Contoh Right Shift (>>): 20 >> 2
    • Biner 20: 00010100
    • Geser 2 ke kanan: 00000101
    • Hasil Desimal: 5 (Karena 20 / 2^2 = 20 / 4 = 5)