Ada enam jenis kelompok operator dalam pemrograman Java:
- Operator Artimatika;
- Operator Penugasan;
- Operator Pembanding;
- Operator Logika;
- Operator Bitwise;
- dan Operator Ternary.
1. Operator Aritmatika
Operator aritmatika digunakan untuk melakukan operasi aritmatika.
Operator ini terdiri dari:
Nama | Simbol |
---|---|
Penjumlahan | + |
Pengurangan | - |
Perkalian | * |
Pembagian | / |
Sisa Bagi | % |
contoh :
Buatlah kelas baru bernama OperatorAritmatika, kemudian ikuti kode berikut:
import java.util.Scanner;
public class OperatorAritmatika {public static void main(String[] args) {int angka1;int angka2;int hasil;Scanner keyboard = new Scanner(System.in);System.out.print("Input angka-1: ");angka1 = keyboard.nextInt();System.out.print("Input angka-2: ");angka2 = keyboard.nextInt();// penjumlahanhasil = angka1 + angka2;System.out.println("Hasil = " + hasil);System.out.print("Input angka-1: ");angka1 = keyboard.nextInt();System.out.print("Input angka-2: ");angka2 = keyboard.nextInt();// penguranganhasil = angka1 - angka2;System.out.println("Hasil = " + hasil);System.out.print("Input angka-1: ");angka1 = keyboard.nextInt();System.out.print("Input angka-2: ");angka2 = keyboard.nextInt();// perkalianhasil = angka1 * angka2;System.out.println("Hasil = " + hasil);System.out.print("Input angka-1: ");angka1 = keyboard.nextInt();System.out.print("Input angka-2: ");angka2 = keyboard.nextInt();// Pembagianhasil = angka1 / angka2;System.out.println("Hasil = " + hasil);System.out.print("Input angka-1: ");angka1 = keyboard.nextInt();System.out.print("Input angka-2: ");angka2 = keyboard.nextInt();// Sisa Bagihasil = angka1 % angka2;System.out.println("Hasil = " + hasil);}}
Silahkan jalankan programnya:
2. Operator Penugasan
Operator penugasan (Assignment Operator) fungsinya untuk meberikan tugas pada variabel tertentu. Biasanya untuk mengisi nilai.
Contoh:
int a = 10;
Variabel
a
ditugaskan untuk menyimpan nilai 10
.
Operator Penugasan terdiri dari:
Nama Operator | Sombol |
---|---|
Pengisian Nilai | = |
Pengisian dan Penambahan | += |
Pengisian dan Pengurangan | -= |
Pengisian dan Perkalian | *= |
Pengisian dan Pembagian | /= |
Pengisian dan Sisa bagi | %= |
Contoh :
buatlah sebuah kelas baru beranama OperatorPenugasan.
Kemudian ikuti kode berikut:
public class OperatorPenugasan {
public static void main(String[] args) {int a;int b;// Pengisian nilaia = 5;b = 10;// penambahanb += a;// sekarang b = 15System.out.println("Penambahan : " + b);// penguranganb -= a;// sekarang b = 10 (karena 15-5)System.out.println("Pengurangan : " + b);// perkalianb *= a;// sekarang b = 50 (karena 10*5)System.out.println("Perkalian : " + b);// Pembagianb /= a;// sekarang b=10System.out.println("Pembagian : " + b);// Sisa bagib %= a;// sekarang b=0System.out.println("Sisa Bagi: " + b);}}
3. Operator Pambanding
Sepeti namanya, tugas oprator ini untuk membandingkan.
Operator ini juga dikenal dengan opeartor relasi.
Nilai yang dihasilkan dari operator ini berupa boolean, yaitu: true
dan false
.
Operator ini terdiri dari:
Nama Simbol
Lebih Besar >
Lebih Kecil <
Sama Dengan ==
Tidak Sama dengan !=
Lebih Besar Sama dengan >=
Lebih Kecil Sama dengan <=
contoh:
boolean x = 10 < 12
Maka x
akan bernilai true, karena 10
lebih kecil dari 12
.
Contoh :
Buatlah sebuah kelas baru bernama OperatorPembanding. Kemudian ikuti kode berikut:
public class OperatorPembanding {
public static void main(String[] args) {
int nilaiA = 12;
int nilaiB = 4;
boolean hasil;
// apakah A lebih besar dari B?
hasil = nilaiA > nilaiB;
System.out.println(hasil);
// apakah A lebih kecil dari B?
hasil = nilaiA < nilaiB;
System.out.println(hasil);
// apakah A lebih besar samadengan B?
hasil = nilaiA >= nilaiB;
System.out.println(hasil);
// apakah A lebih kecil samadengan B?
hasil = nilaiA <= nilaiB;
System.out.println(hasil);
// apakah nilai A sama dengan B?
hasil = nilaiA == nilaiB;
System.out.println(hasil);
// apakah nilai A tidak samadengan B?
hasil = nilaiA != nilaiB;
System.out.println(hasil);
}
}
4. Operator Logika
Kalau kamu pernah belajar logika matematika, pasti tidak akan asing dengan operator ini.
Nama Simbol di Java
Logika AND &&
Logika OR ||
Negasi/kebalikan !
Operator Logika digunakan untuk membuat operasi logika.
Misalnya seperti ini:
- Pernyataan 1: Petani Kode seorang programmer
- Pernyattan 2: Petanikode menggunakan Linux
Jika ditanya, apakah Petani Kode programmer yang menggunakan Linux?
Tentu kita akan cek dulu kebenarannya
- Pernyataan 1: Petani Kode seorang programmer =
true
.
- Pernyattan 2: Petanikode menggunakan Linux =
true
.
Apa petanikode programmer dan menggunakan Linux?
Pertnyataan 1 && Pernyataan 2 = true
tabel kebenaran untuk logika AND.
Pernyatan 1 Pernytaan 2 Logika AND
true
true
true
true
false
false
false
true
false
false
false
false
5. Operator Bitwise
Operator bitwise merupkan operator yang digunakan untuk operasi bit (biner). Operator bitwise terdiri dari:
Nama | Simbol di Java |
---|---|
AND | & |
OR | | |
XOR | ^ |
Negasi/kebalikan | ~ |
Left Shift | << |
Right Shift | >> |
Left Shift (unsigned) | <<< |
Right Shift (unsigned) | >>> |
Operator ini berlaku untuk tipe data
int
, long
, short
, char
, dan byte
.
Operator ini akan menghitung dari bit-ke-bit.
Misalnya, kita punya variabel
a = 60
dan b = 13
.
Bila dibuat dalam bentuk biner, akan menjadi seperti ini:
a = 00111100
b = 00001101
Kemudian, dilakukan operasi bitwise
Operasi AND
a = 00111100b = 00001101
a & b = 00001100
Operasi OR
a = 00111100b = 00001101
a | b = 00111101
Operasi XOR
a = 00111100b = 00001101
a ^ b = 00110001
Opearsi NOT (Negasi/kebalikan)
a = 00111100
~a = 11000011
Konsepnya memang hampir sama dengan opeartor Logika. Bedanya, Bitwise digunakan untuk biner.
Contoh :
Buat kelas baru dengan nama
OperatorBitwise
, kemudian ikuti isinya sebagai berikut.public class OperatorBitwise {
public static void main(String[] args) {int a = 60; /* 60 = 0011 1100 */int b = 13; /* 13 = 0000 1101 */int c = 0;c = a & b; /* 12 = 0000 1100 */System.out.println("a & b = " + c);c = a | b; /* 61 = 0011 1101 */System.out.println("a | b = " + c);c = a ^ b; /* 49 = 0011 0001 */System.out.println("a ^ b = " + c);c = ~a; /*-61 = 1100 0011 */System.out.println("~a = " + c);c = a << 2; /* 240 = 1111 0000 */System.out.println("a << 2 = " + c);c = a >> 2; /* 215 = 1111 */System.out.println("a >> 2 = " + c);c = a >>> 2; /* 215 = 0000 1111 */System.out.println("a >>> 2 = " + c);}}
Perhatikanlah hasil outputnya:
6. Operator Ternary
Opertor ini unik, seperti membuat pertanyaan.
Simbolnya menggunakan tanda tanya (
?
) dan titik-dua (:
) untuk memisah jawabannya.
Pada contoh di atas, “Kamu suka aku” adalah pertanyaan atau kondisi yang akan diperiksa.
Kalau jawabannya benar, maka
iya
. Sebaliknya akan tidak
.
Contoh :
Buatlah sebuah kelas baru dengan nama
OperatorTernary
, kemudian ikuti kode berikut.public class OperatorTernary {
public static void main(String[] args) {boolean suka = true;String jawaban;// menggunakan operator ternaryjawaban = suka ? "iya" : "tidak";// menampilkan jawabanSystem.out.println(jawaban);}}
Hasil outputnya:
iya
Sekarang coba ganti nilai variabel
suka
menjadi false
, lalu dijalankan lagi.
Pasti akan menghasilkan
tidak
.
Cara lain, dapat juga membuat kondisi seperti ini:
int suka = 8;
String jawaban = (suka > 5) ? "iya" : "tidak";