Misalkan kita ingin menjumlahkan nilai dari variabel
x
dan y
, maka
kita bisa lakukan dengan operator penjumlahan (+
).x + y
Ada enam jenis kelompok operator dalam pemrograman Java:- Operator Artimatika;
- Operator Penugasan;
- Operator Pembanding;
- Operator Logika;
- Operator Bitwise;
- dan Operator Ternary.
![6 Jenis Operator dalam Java](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqKX8pJ7IwcHE_Cts30mbz_v1zPByvYEZ85mdRsw13Svw9AUcb5O0VmTbb8iiJDvR9EQnEAjpcijRd6r64i1eGjXnZsG9EIoU3TsNggnRGXP5MXWvmAmgkYEjqxD0_np_GoewACT1S10U3/s400/Mind+Map+Operator+di+Java.png)
Ukuran penuh dari mind map ini dapat kamu lihat di: coggle.it
Apa saja perbedaan dari semua jenis operator tersebut?
Mari kita bahas, satu per satu…
1. Operator Aritmatika
Operator aritmatika digunakan untuk melakukan operasi aritmatika.Operator ini terdiri dari:
Nama | Simbol |
---|---|
Penjumlahan | + |
Pengurangan | - |
Perkalian | * |
Pembagian | / |
Sisa Bagi | % |
Mari kita coba praktik…
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();
// penjumlahan
hasil = 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();
// pengurangan
hasil = 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();
// perkalian
hasil = 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();
// Pembagian
hasil = 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 Bagi
hasil = angka1 % angka2;
System.out.println("Hasil = " + hasil);
}
}
Silahkan jalankan programnya:![Hasil Output Program Java](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-NsY6oxbFIt5MIDM8-TrayhnehN-XZmUzb3BRAkB4rF7wi65IcWVhEeu0wYEXsJLENC-QSz3pgzu38ei95lERizb8B9unttQRe_7STKtaRLONLRsUzv77vuyY_rQVbYagTfyG0znXdVYx/s400/Hasil+output+program+operator+aritmatika.png)
Mudah bukan…?
Mau laithan lagi?
Semakin banyak latihan, semakin mantap.Sekarang coba contoh kasus: Program menghitung keliling persegi panjang.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxZi8mD3Nr79KgA3i0W-2UWc5rtjUnF9UNV3sj30TwdoBqs54dDYn8fIbkah4v7NaOp2eeBeIbvFwHM92t7bvaHOEQ77bMhJdiMvp-46yO-71ulr_f5nuDRJLxaNf-HoqV4bqI2a5_Stro/s400/Kode+program+keliling+persegi+panjang.png)
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 | %= |
Mari Kita Coba…
Sekarang, buatlah sebuah kelas baru beranama OperatorPenugasan.Kemudian ikuti kode berikut:
public class OperatorPenugasan {
public static void main(String[] args) {
int a;
int b;
// Pengisian nilai
a = 5;
b = 10;
// penambahan
b += a;
// sekarang b = 15
System.out.println("Penambahan : " + b);
// pengurangan
b -= a;
// sekarang b = 10 (karena 15-5)
System.out.println("Pengurangan : " + b);
// perkalian
b *= a;
// sekarang b = 50 (karena 10*5)
System.out.println("Perkalian : " + b);
// Pembagian
b /= a;
// sekarang b=10
System.out.println("Pembagian : " + b);
// Sisa bagi
b %= a;
// sekarang b=0
System.out.println("Sisa Bagi: " + b);
}
}
Hasil outputnya:![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDPEcKaGaqSxynnmNeQoOG5597SHlgE9PAhU7IlQVIb-qWLvOlIL3HqpxM-uf_NolnAHO_r2ktdgz4tz_9NBuj63nBcpgywZciumlkvAXHGVdDNW9AQSdNGf_oTmmI5oWqxmPVtACbHMp9/s400/hasil+output+program+operator+penugasan+java.png)
3. Operator Pambanding
Sepeti namanya, tugas oprator ini untuk membandingkan.Operator ini juga dikenal dengak 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 | <= |
boolean x = 10 < 12
Maka x
akan bernilai true, karena 10
lebih kecil dari 12
.Untuk lebih jelasnya…
Mari kita coba dalam kode
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);
}
}
Kode program di atas, akan menghasilkan output seperti ini:![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgLYF_epaMWr4GnMJhrPJET0cXALV_PCo7ByE5uFoqAMz0BPVjT5-YuaAZbKOdkrsBta_EZc3UUgUI7C4ICn2ftD2ELS_G0W6ttYpLg1v3-JJV0DdAtH0MSgVNX2uVyP5xv2afRsZN7OvHR/s400/hasil+output+operator+pembanding+di+java.png)
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 | ! |
Misalnya seperti ini:
- Pernyataan 1: Petani Kode seorang programmer
- Pernyattan 2: Petanikode menggunakan Linux
Tentu kita akan cek dulu kebenarannya
- Pernyataan 1: Petani Kode seorang programmer =
true
. - Pernyattan 2: Petanikode menggunakan Linux =
true
.
Pertnyataan 1 && Pernyataan 2 = true
Bingung?Coba cek lagi tabel kebenaran untuk logika AND.
Pernyatan 1 | Pernytaan 2 | Logika AND |
---|---|---|
true | true | true |
true | false | false |
false | true | false |
false | false | false |
Sepertinya kamu harus buka lagi pelajarann logika matematika 😄.
Lalu bagaimana pengunaanya di program?
Langsung Saja dicoba Program Berikut
Buatlah sebuah kelas baru beranama OperatorLogika. Kemudian ikuti kode berikut ini:![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDFR_-ObPjQN-BfqJLF0ieBhOkyV1TmjLKLhr_HQBXrGTiRoU-BrHOpkhys4EdX_qmnzJKUAp0X-9odaBwdRHuDh_VR0DtAxnryitTGZ1GwmQhzgORLzq5lN4RFpH5pIGVxadO2gE9Ve3Z/s400/kode+program+operator+logika+java.png)
Silahkan jalankan dan perhatikan hasilnya:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjD6zGRPFkpDSSzJ7QIfsvN0-2JhVLqJxK7oxaEstgAXDc50PJ5oOVDu3v92ereVGI2XKObzlFNRjniGgeZ3u06lbJ_ez7y5BdPZyPFXTbcW_u6Le-nd5t08GlXTtULJs_Cd5Muc8Da5hEq/s400/Hasil+output+program+operator+logika+java.png)
5. Operator Bitwise
Operator bitwise merupkan operator yang digunakan untuk operasi bit (biner).Nama | Simbol di Java |
---|---|
AND | & |
OR | | |
XOR | ^ |
Negasi/kebalikan | ~ |
Left Shift | << |
Right Shift | >> |
Left Shift (unsigned) | <<< |
Right Shift (unsigned) | >>> |
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 bitwiseOperasi AND
a = 00111100
b = 00001101
a & b = 00001100
Operasi ORa = 00111100
b = 00001101
a | b = 00111101
Operasi XORa = 00111100
b = 00001101
a ^ b = 00110001
Opearsi NOT (Negasi/kebalikan)a = 00111100
~a = 11000011
Konsepnya memang hampir sama dengan opeartor Logika. Bedanya, Bitwise
digunakan untuk biner.Untuk lebih jelasnya…
Mari kita coba dalam program
Buat kelas baru dengan namaOperatorBitwise
, 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:![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisI6h-VAvZmjovMeFiAcZ9ZHjRChVL1W0AxZROxXt9q-u3sw__Lm4tIWHRZrDrUkoVY2bj3JDH2_vpZJgVPI_vMQ3k27yWI881FtV6sVOYBA0c-WieLEczOwhoyIPs0IF_zDj4qVoFphuj/s400/Hasil+output+operator+bitwise+java.png)
6. Operator Ternary
Opertor ini unik, seperti membuat pertanyaan.Simbolnya menggunakan tanda tanya (
?
) dan titik-dua (:
) untuk memisah jawabannya.![Operator Ternary di Java](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioKHDBY1ZnskKvbKZZSYWMY_PzHQSLZ0DmkTbOLjCX4GGr-78CLIrTqA7mijeRxmcI6r4xnvzoHcdKp4rg_4DXGJB5T-QbXXCFjBkGwdm3BfOfpVdU3VmAt6QlkEcFdGyv7TC5PrS_efzK/s400/operator+ternary+di+java.png)
Pada contoh di atas, “Kamu suka aku” adalah pertanyaan atau kondisi yang akan diperiksa.
Kalau jawabannya benar, maka
iya
. Sebaliknya akan tidak
.Lebih jelasnya, mari kita coba…
Program dengan Operator Ternary
Buatlah sebuah kelas baru dengan namaOperatorTernary
, kemudian ikuti kode
berikut.public class OperatorTernary {
public static void main(String[] args) {
boolean suka = true;
String jawaban;
// menggunakan operator ternary
jawaban = suka ? "iya" : "tidak";
// menampilkan jawaban
System.out.println(jawaban);
}
}
Hasil outputnya:iya
Sekarang coba ganti nilai variabel suka
menjadi false
, lalu dijalankan
lagi.Pasti akan menghasilkan
tidak
.Sumber: https://www.petanikode.com/java-operator/