Last Updated on October 16, 2021 by
Java menyediakan seperangkat operator yang disebut dengan “Java Basic Operators” untuk memanipulasi variabel. Operator tersebut dibagi menjadi 6 operator yaitu Arithmetic Operators, Relational Operators, Bitwise Operators, Logical Operators, Assignment Operators dan Misc Operators.
Artikel Codekey kali ini akan membahas tentang jenis-jenis operator dalam bahasa pemrograman Java. Jika Anda tertarik dengan pembahasan tentang Java operator simak terus artikel ini sampai akhir.
Table of Contents
Pengertian Java Basic Operators
Java Basic Operators adalah simbol khusus yang melakukan operasi tertentu pada satu, dua atau tiga operan dan kemudian mengembalikan hasilnya. Operator Java diklasifikasikan dan terdaftar menurut urutan prioritas. Operator Java umumnya digunakan untuk memanipulasi tipe data primitif.
Operator juga didefinisikan sebagai simbol khusus yang melakukan operasi tertentu pada satu, dua, atau tiga operan, dan kemudian mengembalikan hasilnya. Saat ini kita akan membahas jenis-jenis operator bahasa pemrograman Java.
Arithmetic Operators
Arithmetic operators atau perator aritmatika digunakan dalam ekspresi matematika dengan cara yang sama seperti yang digunakan dalam aljabar. Tabel berikut mencantumkan operator aritmatika.
public class newExample { public static void main(String args[]) { int x = 20; int y = 40; System.out.println("x + y = " + (x + y) ); System.out.println("x - y = " + (x - y) ); System.out.println("x * y = " + (x * y) ); System.out.println("y / x = " + (y / x) ); System.out.println("y % x = " + (y % x) ); System.out.println("x++ = " + (x++) ); System.out.println("x-- = " + (x--) ); // perbedaan x++ dengan ++x System.out.println("x++ = " + (x++) ); System.out.println("++x = " + (++x) ); } }
Asumsikan variabel integer x bernilai 20 dan variabel y bernilai 40, maka hasilnya akan seperti ini:
x + y = 60 x – y = -20
x * y = 800
y / x = 2
y % x = 0
x++ = 20
x– = 21
x++ = 20
++x = 22
Operator | Deskripsi | Contoh |
+ (Addition) | Menambahkan nilai dikedua sisi operator | x + y akan menghasilkan 60 |
– (Subtraction) | Mengurangi operan tangan kanan dari operan tangan kiri. | x – y akan menghasilkan -20 |
* (Multiplication) | Mengalikan nilai di kedua sisi operator. | x * y akan menghasilkan 800 |
/ (Division) | Membagi operan kiri dengan operan kanan. | y / x akan menghasilkan 2 |
% (Modulus) | Membagi operan kiri dengan operan kanan dan mengembalikan sisanya. | y % x akan menghasilkan 0 |
++ (Increment) | Meningkatkan nilai operan sebesar 1. | x++ akan menghasilkan 20 |
— (Decrement) | Mengurangi nilai operan sebesar 1. | x– akan menghasilkan 21 |
Relational Operators
Berikut adalah operator relasional yang didukung oleh bahasa Java. Asumsikan variabel x bernilai 20 dan variabel y bernilai 40:
public class newExample { public static void main(String args[]) { int x = 20; int y = 40; System.out.println("x == y = " + (x == y) ); System.out.println("x != y = " + (x != y) ); System.out.println("x > y = " + (x > y) ); System.out.println("x < y = " + (x < y) ); System.out.println("y >= x = " + (y >= x) ); System.out.println("y <= x = " + (y <= x) ); } }
maka Anda akan menghasilkan:
x == y =falsex
!= y =true
x > y = false
x < y = true
y >= x = true
y <= x = false
Operator | Deskripsi | Contoh |
== (equal to) | Memeriksa apakah nilai dua operan sama atau tidak, jika ya maka kondisi menjadi benar.Memeriksa apakah nilai operan kiri lebih besar dari nilai operan kanan, jika ya maka kondisi menjadi benar. | (x == y) bernilai benar |
!= (not equal to) | Memeriksa apakah nilai dua operan sama atau tidak, jika nilainya tidak sama maka kondisi menjadi benar. | (x != y) bernilai benar |
> (greater than) | Memeriksa apakah nilai operan kiri lebih besar dari nilai operan kanan, jika ya maka kondisi menjadi benar. | (x > y) bernilai tidak benar |
< (less than) | Memeriksa apakah nilai operan kiri lebih kecil dari nilai operan kanan, jika ya maka kondisi menjadi benar. | (x < y) bernilai benar |
>= (greater than or equal to) |
Memeriksa apakah nilai operan kiri lebih besar atau sama dengan nilai operan kanan, jika ya maka kondisi menjadi benar. |
(x >= y) bernilai tidak benar |
<= (less than or equal to) |
Memeriksa apakah nilai operan kiri kurang dari atau sama dengan nilai operan kanan, jika ya maka kondisi menjadi benar. |
(x <= y) bernilai benar. |
Bitwise Operators
Java mendefinisikan beberapa operator bitwise, yang dapat diterapkan pada tipe integer, long, int, short, char, dan byte. Operator bitwise bekerja pada bit dan melakukan operasi bit-by-bit. Asumsikan jika x = 10 dan y = 15; sekarang dalam format biner mereka akan menjadi sebagai berikut
x = 1010
y = 1111
—————–
x&y = 1010
x|y = 1111
x^y = 0101
~x = 0101
Tabel berikut mencantumkan operator bitwise. Asumsikan variabel integer x menampung 10 dan variabel y menampung 15,
public class newExample { public static void main(String args[]) { int x = 10; int y = 15; int hasil = 0; hasil = x & y; System.out.println("x & y = " + hasil ); hasil = x | y; System.out.println("x | y = " + hasil ); hasil = x ^ y; System.out.println("x ^ y = " + hasil ); hasil = ~x; System.out.println("~x = " + hasil ); hasil = x << 2; System.out.println("x << 2 = " + hasil ); hasil = x >> 2; System.out.println("x >> 2 = " + hasil ); hasil = x >>> 2; System.out.println("x >>> 2 = " + hasil ); } }
maka hasilnya:
x & y = 10
x | y = 15
x ^ y = 5
~x = -11
x << 2 = 40
x >> 2 = 2
x >>> 2 = 2
Operator | Description | Example |
& (bitwise and) | Biner AND Operator menyalin sedikit ke hasil jika ada di kedua operan. | (x & y) ia akan menghasilkan 10 yang mana merupakan 1010 |
| (bitwise or) | Biner ATAU Operator menyalin sedikit jika ada di salah satu operan. | (x | y) ia akan menghasilkan 15 yang mana merupakan 1111 |
^ (bitwise XOR) | Operator XOR Biner menyalin bit jika diatur dalam satu operan tetapi tidak keduanya. | (x ^ y) ia akan menghasilkan 5 yang mana 101 |
~ (bitwise compliment) | Operator Pelengkap Binary Ones adalah unary dan memiliki efek ‘membalik’ bit. | (~x ) ia akan menghasilkan -11 yang mana bernilai 0101 dalam bentuk komplemen 2 karena bilangan biner bertanda. |
<< (left shift) | Operator Shift Kiri Biner. Nilai operan kiri dipindahkan ke kiri dengan jumlah bit yang ditentukan oleh operan kanan. | x << 2 ia akan menghasilkan 40 yang bernilai 101000 |
>> (right shift) |
Operator Shift Kanan Biner. Nilai operan kiri dipindahkan ke kanan dengan jumlah bit yang ditentukan oleh operan kanan. |
x >> 2 ia akan menghasilkan 2 yang bernilai 10 |
>>> (zero fill right shift) |
Geser operator pengisian nol ke kanan. Nilai operan kiri dipindahkan ke kanan dengan jumlah bit yang ditentukan oleh operan kanan dan nilai yang digeser diisi dengan nol. |
x >>>2 ia akan menghasilkan 2 yang bernilai 10 |
Logical Java Basic Operators
Tabel berikut mencantumkan operator logika. Asumsikan variabel Boolean A benar dan variabel B salah,
public class newExample { public static void main(String args[]) { boolean x = true; boolean y = false; System.out.println("x && y = " + (x&&y)); System.out.println("x || y = " + (x||y) ); System.out.println("!(x && y) = " + !(x && y)); } }
maka hasilnya:
x && y =
falsex || y =
true!(x && y) = true
Operator | Deskripsi | Contoh |
&& (logical and) |
Disebut operator logika AND. Jika kedua operan bukan nol, maka kondisinya menjadi benar. |
(x && y) bernilai false |
|| (logical or) | Disebut Logis ATAU Operator. Jika salah satu dari dua operan bukan nol, maka kondisinya menjadi benar. | (x || y) bernilai true |
! (logical not) | Disebut Operator BUKAN Logis. Gunakan untuk membalikkan keadaan logis operandnya. Jika suatu kondisi benar maka operator Logical NOT akan membuat false. | !(x && y) bernilai true |
Assignment Operators
Assignment operator didukung oleh Java, berikut ini adalah daftarnya:
Operator | Deskripsi | Contoh |
= | Operator penugasan sederhana. Menetapkan nilai dari operan sisi kanan ke operan sisi kiri. | hasil = x + y akan menghasilkan nilai dari x + y ke hasil |
+= | Tambahkan operator penugasan AND. Itu menambahkan operan kanan ke operan kiri dan menetapkan hasilnya ke operan kiri. | Hasil += x setara dengan hasil = hasil + x |
-= |
Pengurangan AND operator penugasan. Ini mengurangi operan kanan dari operan kiri dan menetapkan hasilnya ke operan kiri. |
hasil -= x setara dengan hasil = hasil – x |
*= | Operator perkalian AND penugasan. Ini mengalikan operan kanan dengan operan kiri dan menetapkan hasilnya ke operan kiri. | hasil *= x setara dengan hasil = hasil * x |
/= | Pembagian AND operator penugasan. Ini membagi operan kiri dengan operan kanan dan menetapkan hasilnya ke operan kiri. | hasil /= x setara dengan hasil = hasil / x |
%= | Modulus AND operator penugasan. Dibutuhkan modulus menggunakan dua operan dan menetapkan hasilnya ke operan kiri. | hasil %= x setara dengan hasil = hasil % x |
<<= |
Shift kiri AND operator penugasan. |
hasil <<= 2 sama dengan hasil = hasil << 2 |
>>= |
bitwise eksklusif OR dan penugasan operator. |
hasil >>= 2 sama dengan hasil = hasil >> 2 |
&= | bitwise inklusif OR dan operator penugasan. | hasil &= 2 sama dengan hasil = hasil & 2 |
^= | bitwise eksklusif OR dan operator penugasan. | hasil ^= 2 sama dengan hasil = hasil ^ 2 |
|= | bitwise inklusif OR dan operator penugasan. | hasil |= 2 sama dengan hasil = hasil | 2 |
Misc Operators
Ada beberapa operator lain yang didukung oleh Java.
Conditional Operator
Operator bersyarat juga dikenal sebagai operator ternary. Operator ini terdiri dari tiga operan dan digunakan untuk mengevaluasi ekspresi Boolean. Tujuan dari operator adalah untuk memutuskan, nilai mana yang harus diberikan ke variabel. Operatornya ditulis sebagai berikut:
variable x = (expression) ? value if true : value if false
Contohnya penerapannya:
public class newExample { public static void main(String args[]) { int x, y; x = 5; y = (x == 5) ? 5 : 0; System.out.println( "Nilai dari y adalah " + y ); y = (x == 10) ? 5 : 0; System.out.println( "Nilai dari y adalah " + y ); } }
Kode berikut ini menghasilkan output:
Nilai dari y adalah 5Nilai dari y adalah 0
Instanceof Operator
Operator ini hanya digunakan untuk variabel referensi objek. Operator memeriksa apakah objek adalah tipe tertentu (tipe kelas atau tipe antarmuka). operator instanceof ditulis sebagai:
( Object reference variable ) instanceof (class/interface type)
Jika objek yang dirujuk oleh variabel di sisi kiri operator melewati pemeriksaan IS-A untuk tipe kelas/antarmuka di sisi kanan, maka hasilnya akan benar. Berikut ini contohnya
public class newExample { public static void main(String args[]) { String nama = "Andi"; // akan bernilai true karena variable nama adalah string boolean hasil = nama instanceof String; System.out.println( hasil ); } }
Berikut ini adalah hasilnya:
true
Operator ini akan tetap mengembalikan nilai true, jika objek yang dibandingkan adalah penugasan yang kompatibel dengan tipe di sebelah kanan. Berikut ini adalah satu contoh lainnya:
class Siswa {} public class Kelas extends Siswa { public static void main(String args[]) { Siswa s = new Kelas(); boolean hasil = s instanceof Kelas; System.out.println( hasil ); } }
Output:
true
Presedence dari Java Basic Operator
Presedence operator menentukan pengelompokan istilah dalam ekspresi. Ini mempengaruhi bagaimana ekspresi dievaluasi. Operator tertentu memiliki prioritas lebih tinggi daripada yang lain; misalnya, operator perkalian memiliki prioritas lebih tinggi daripada operator penambahan
Misalnya, x = 10 + 5 * 2; di sini x ditetapkan 20, bukan 30 karena operator * memiliki prioritas lebih tinggi dari +, jadi pertama kali dikalikan dengan 5 * 2 dan kemudian dijumlahkan 10 menjadi 20.
Di sini, operator dengan prioritas tertinggi muncul di bagian atas tabel, operator dengan prioritas terendah muncul di bagian bawah. Dalam sebuah ekspresi, operator dengan prioritas lebih tinggi akan dievaluasi terlebih dahulu.
Kategori | Operator | Assosiati |
Postfix | expression++ expression– | Kiri ke kanan |
Unary | ++expression –-expression +expression –expression ~ ! | Right to left |
Multiplicative | * / % | Kiri ke kanan |
Additive | + – | Kiri ke kanan |
Shift | << >> >>> | Kiri ke kanan |
Relational | < > <= >= instanceof | Kiri ke kanan |
Equality | == != | Kiri ke kanan |
Bitwise AND | & | Kiri ke kanan |
Bitwise XOR | ^ | Kiri ke kanan |
Bitwise OR | | | Kiri ke kanan |
Logical AND | && | Kiri ke kanan |
Logical OR | || | Kiri ke kanan |
Conditional | ?: | Kanan ke kiri |
Assignment | = += -= *= /= %= ^= |= <<= >>= >>>= | Kanan ke kiri |
Demikianlah penjelasan tentang Java Basic Operator yang bisa Anda pelajari dan Anda terapkan saat bekerja dengan bahasa pemrograman Java. Jika Anda tertarik untuk belajar Java secara lebih mendalam, jangan lupa mengunjungi seri tutorial Java di https://codekey.id.
Codekey merupakan media untuk para pemula mempelajari tentang pemrograman. Codekey menyediakan banyak materi dan tutorial seputar bahasa pemrograman yang terkenal seperti Dart maupun Python. Jangan sampai ketinggalan update terbaru dari Codekey!
Jasa Pembuatan Aplikasi, Website dan Internet Marketing | PT APPKEY
PT APPKEY adalah perusahaan IT yang khusus membuat aplikasi Android, iOS dan mengembangkan sistem website. Kami juga memiliki pengetahuan dan wawasan dalam menjalankan pemasaran online sehingga diharapkan dapat membantu menyelesaikan permasalahan Anda.