Pada sesi tutorial belajar bahasa pemrograman Java sebelumnya, kita telah membahas jenis-jenis tipe data di dalam bahasa Java. Untuk mengolah data tersebut, butuh operator. Karena itulah dalam beberapa tutorial ke depan saya akan membahas tentang jenis-jenis operator dalam bahasa pemrograman Java.
Kali ini kita akan melihat secara ringkas apa saja jenis-jenis operator dalam Bahasa Java. Penjelasan lebih lanjut akan dibahas dalam tutorial terpisah.
Pengertian Operand dan Operator
Sebelum masuk ke jenis-jenis operator di dalam bahasa Java, terdapat istilah operand dan operator. Operand adalah nilai asal yang dipakai dalam sebuah proses operasi. Sedangkan Operator adalah instruksi yang diberikan untuk mendapatkan hasil dari proses tersebut.
Biasanya operator berbentuk karakter matematis atau perintah singkat sederhana. Sebagai contoh, pada operasi: 10 + 2. Angka 10 dan 2 disebut sebagai operand, sedangkan tanda tambah (karakter +) adalah operator.
Operator Unary, Binary dan Ternary
Berdasarkan jumlah operand-nya, operator dibagi menjadi 3 jenis: Operator Unary, Operator Binary dan Operator Ternary.
- Operator Unary adalah operator yang hanya terdiri dari 1 operand. Contohnya adalah operator positif (plus): +7, +9, +10.111
- Operator Binary adalah operator yang terdiri dari 2 operand. Sebagian besar operator di dalam bahasa Java termasuk ke dalam operator binary. Contohnya seperti operator aritmatika: 4 + 8, 9 * 2, 8 % 2, dll.
- Operator Ternary adalah operator yang terdiri dari 3 operand. Bahasa Java memiliki 1 operator ternary, yakni " ? : " seperti (a == 1) ? 20: 30.
Jenis-jenis Operator dalam Bahasa Pemrograman Java
Berikut jenis-jenis operator dalam bahasa pemrograman Java:
- Operator Aritmatika
- Operator Increment dan Decrement
- Operator Perbandingan / Relasional
- Operator Logika / Boolean
- Operator Bitwise
- Operator Assignment
- Operator Type Comparison
- Operator Ternary
Daftar di atas bisa saja berbeda karena cara pengelompokkan yang dipakai, misalnya operator increment atau decrement kadang dimasukkan ke dalam operator aritmatika. Kita akan bahas sekilas tentang pengertian dari operator-operator ini.
Operator Aritmatika
Operator aritmatika adalah operator yang biasa kita temukan untuk operasi matematika. Aritmatika sendiri merupakan cabang ilmu matematika yang membahas perhitungan sederhana seperti kali, bagi, tambah dan kurang (kabataku)
Selain keempat operasi tersebut, bahasa Java juga memiliki operasi modulo division, atau operator % yang dipakai untuk mencari sisa hasil bagi.
Tabel berikut merangkum operator aritmatika dalam bahasa pemrograman Java:
Operator | Penjelasan | Contoh |
---|---|---|
+ | Penambahan | a = 5 + 2 |
– | Pengurangan | a = 5 – 2 |
* | Perkalian | a = 5 * 2 |
/ | Pembagian | a = 5 / 2 |
% | Sisa hasil bagi (modulus) | a = 5 % 2 |
Operator Aritmatika Unary
Operator | Penjelasan | Contoh |
---|---|---|
+ | Positif (plus) | +5 |
– | Negatif (min) | -3 |
Berikut contoh kode program operator aritmatika dalam bahasa Java:
class BelajarJava { public static void main(String args[]){ int a = 10; int b = 5; int hasil; hasil = a + b; System.out.println( hasil ); hasil = a - b; System.out.println( hasil ); hasil = a * b; System.out.println( hasil ); hasil = a / b; System.out.println( hasil ); hasil = a % b; System.out.println( hasil ); } }
Hasil kode program:
15 5 50 2 0
Operator Increment dan Decrement
Operator increment dan decrement adalah sebutan untuk operasi seperti a++
, dan a--
. Ini sebenarnya penulisan singkat dari operasi a = a + 1 serta a = a – 1.
Increment digunakan untuk menambah variabel sebanyak 1 angka, sedangkan decrement digunakan untuk mengurangi variabel sebanyak 1 angka.
Penulisannya menggunakan tanda tambah 2 kali untuk increment, dan tanda kurang 2 kali untuk decrement. Penempatan tanda tambah atau kurang ini boleh di awal seperti ++a
dan --a
, atau di akhir variabel seperti a++
dan a--
.
Dengan demikian terdapat 4 jenis increment dan decrement dalam bahasa Java:
Operator | Contoh | Penjelasan |
---|---|---|
Pre-increment | ++a |
Tambah a sebanyak 1 angka, lalu tampilkan hasilnya |
Post-increment | a++ |
Tampilkan nilai a, lalu tambah a sebanyak 1 angka |
Pre-decrement | --a |
Kurangi a sebanyak 1 angka, lalu tampilkan hasilnya |
Post-decrement | a-- |
Tampilkan nilai a, lalu kurangi a sebanyak 1 angka |
Berikut contoh kode program operator increment dan decrement dalam bahasa Java:
class BelajarJava { public static void main(String args[]){ int a = 10; a++; System.out.println("Isi variabel a: " + a ); int b = 10; b--; System.out.println("Isi variabel b: " + b ); } }
Hasil kode program:
Isi variabel a: 11 Isi variabel b: 9
Operator Perbandingan / Relasional
Operator perbandingan dipakai untuk membandingkan 2 buah nilai, apakah nilai tersebut sama besar, lebih kecil, lebih besar, dll. Hasil dari operator perbandingan ini adalah boolean True atau False.
Tabel berikut merangkum hasil dari operator perbandingan dalam bahasa Java:
Operator | Penjelasan | Contoh | Hasil |
---|---|---|---|
== | Sama dengan | 5 == 5 | true |
!= | Tidak sama dengan | 5 != 5 | false |
> | Lebih besar | 5 > 6 | false |
< | Lebih kecil | 5 < 6 | true |
>= | Lebih besar atau sama dengan | 5 >= 3 | true |
<= | Lebih kecil atau sama dengan | 5 <= 5 | true |
Berikut contoh kode program operator perbandingan dalam bahasa Java:
class BelajarJava { public static void main(String args[]){ int a = 10; int b = 5; boolean hasil; hasil = a == b; System.out.println("Apakah a == b ? " + hasil ); hasil = a != b; System.out.println("Apakah a != b ? " + hasil ); hasil = a > b; System.out.println("Apakah a > b ? " + hasil ); hasil = a < b; System.out.println("Apakah a < b ? " + hasil ); hasil = a >= b; System.out.println("Apakah a >= b ? " + hasil ); hasil = a <= b; System.out.println("Apakah a <= b ? " + hasil ); } }
Hasil kode program:
Apakah a == b ? false Apakah a != b ? true Apakah a > b ? true Apakah a < b ? false Apakah a >= b ? true Apakah a <= b ? false
Operator Logika / Boolean
Operator logika dipakai untuk menghasilkan nilai boolean true atau false dari 2 kondisi atau lebih. Tabel berikut merangkum hasil dari operator logika dalam bahasa Java:
Operator | Nama | Penjelasan | Contoh |
---|---|---|---|
&& | And | Akan menghasilkan true jika kedua operand true | true && false, hasilnya: false |
|| | Or | Akan menghasilkan true jika salah satu operand true | true || false, hasilnya: false |
! | Not | Akan menghasilkan true jika operand false | !false, hasilnya: true |
Rumus yang dipakai adalah sebagai berikut:
- Operator && hanya akan menghasilkan true jika kedua operand bernilai true, selain itu hasilnya false.
- Operator || hanya akan menghasilkan false jika kedua operand bernilai false, selain itu hasilnya true .
- Operator ! Akan membalikkan logika, !false menjadi true, !true menjadi false.
Berikut contoh kode program operator logika dalam bahasa Java:
class BelajarJava { public static void main(String args[]){ boolean a = true; boolean b = false; boolean hasil; hasil = a && b; System.out.println("Hasil dari a && b : " + hasil ); hasil = a || b; System.out.println("Hasil dari a || b : " + hasil ); hasil = !b; System.out.println("Hasil dari !b : " + hasil ); } }
Hasil kode program:
Hasil dari a && b : false Hasil dari a || b : true Hasil dari !b : true
Operator Bitwise
Bitwise adalah operator khusus untuk menangani operasi logika bilangan biner dalam bentuk bit.
Bilangan biner sendiri merupakan jenis bilangan yang hanya terdiri dari 2 jenis angka, yakni 0 dan 1. Jika nilai asal yang dipakai bukan bilangan biner, akan dikonversi secara otomatis oleh compiler Java menjadi bilangan biner. Misalnya 7 desimal = 0111 dalam bilangan biner.
Bahasa Java mendukung 6 jenis operator bitwise. Daftar lengkapnya dapat dilihat pada tabel berikut:
Operator | Nama | Contoh | Biner | Hasil (biner) | Hasil (desimal) |
---|---|---|---|---|---|
& | AND | 10 & 12 | 1010 & 1100 | 1000 | 8 |
| | OR | 10 | 12 | 1010 | 1100 | 1110 | 14 |
^ | XOR | 10 ^ 1 | 1010 ^ 1100 | 0110 | 6 |
~ | NOT | ~10 | Â ~1010 | 0101 | -11 (Two's complement) |
<< | Left shift | 10 << 1 | 1010 << 1 | 10100 | 20 |
>> | Right shift | 10 >> 1 | 1010 >> 1 | 101 | 5 |
Berikut contoh kode program operator bitwise dalam bahasa Java:
class BelajarJava { public static void main(String args[]){ int a = 10; int b = 12; int hasil; hasil = a & b; System.out.println("Hasil dari a & b : " + hasil ); hasil = a | b; System.out.println("Hasil dari a | b : " + hasil ); hasil = a ^ b; System.out.println("Hasil dari a ^ b : " + hasil ); hasil = ~a; System.out.println("Hasil dari ~a : " + hasil ); hasil = a << 1; System.out.println("Hasil dari a << 1 : " + hasil ); hasil = a >> 1; System.out.println("Hasil dari a >> 1 : " + hasil ); } }
Hasil kode program:
Hasil dari a & b : 8 Hasil dari a | b : 14 Hasil dari a ^ b : 6 Hasil dari ~a : -11 Hasil dari a << 1 : 20 Hasil dari a >> 1 : 5
Operator Assignment
Operator assignment adalah operator yang digunakan untuk memberikan nilai ke dalam suatu variabel. Di dalam bahasa Java, operator assignment menggunakan tanda sama dengan " = ". Nantinya juga terdapat operator assignment gabungan, seperti " += ", " -= ", dsb.
Operator Type Comparison
Operator type comparison adalah sebutan untuk operator khusus yang dipakai untuk pemeriksaan sebuah object. Di dalam bahasa Java operator ini menggunakan perintah instanceof. Berikut contoh penggunaannya:
class BelajarJava { public static void main(String args[]){ String a = "Duniailkom"; boolean hasil; hasil = a instanceof String; System.out.println("Apakah a sebuah string? " + hasil ); } }
Hasil kode program:
Apakah a sebuah string? true
Karena operator instanceof berhubungan dengan object, maka bahasannya akan kita tunda sampai masuk ke materi OOP (Object Oriented Programming) bahasa Java.
Operator Ternary
Operator ternary adalah operator yang terdiri dari 3 operand. Di dalam bahasa Java, operator ternary ini menggunakan tanda ? : dan merupakan penulisan singkat dari kondisi if else. Penjelasan tentang operator ini juga akan kita tunda sampai masuk ke materi tentang kondisi percabangan if else.
Berikut contoh dari penggunaan operator ternary dalam bahasa pemrograman Java:
class BelajarJava { public static void main(String args[]){ String a = "Duniailkom"; String hasil; hasil = a == "Duniailkom" ? "Mari belajar Java" : "Ops..."; System.out.println(hasil); hasil = a == "Google" ? "Googling..." : "Bukan web google"; System.out.println(hasil); } }
Hasil kode program:
Mari belajar Java Bukan web google
Itulah jenis-jenis operator yang terdapat di dalam bahasa pemrograman Java. Penjelasan lebih detail, termasuk pengertian, cara penggunaan serta contoh kode programnya akan saya bahas pada tutorial terpisah.
Kita akan mulai dengan operator aritmatika terlebih dahulu: Jenis-jenis Operator Aritmatika Bahasa Java.