Macam Jenis Operator Dalam jJava
- Operator Aritmatika
- Operator Penugasan
- Operator Pembanding
- Operator Logika
Operator aritmatika
____________________________________________________________
Operator
aritmatika digunakan untuk melakukan
penghitungan isi dari variable A dan isi dari variable B
Operator
|
Keterangan
|
+
|
penjumlahan
|
–
|
Pengurangan
|
*
|
Perkalian
|
/
|
Pembagian
|
%
|
Sisa Pembagian
|
Contoh :
Di Java
operator aritmatika yang mempunyai prioritas lebih tinggi akan dikerjakan lebih
dahulu daripada operator yang prioritasnya lebih rendah.
Prioritas
operator aritmatika dari tertinggi ke terendah adalah sebagai berikut:
- ++ — (increment/decrement)
- – (simbol minus)
- *, /, % (perkalian pembagian modulus)
- +, – (penjumlahan, pengurangan)
Jika
operator memiliki prioritas yang sama maka operator yang letaknya ada di
sebelah kiri akan dikerjakan terlebih dahulu.
Contoh:
a = 10 – 4 /
2
Pernyataan yang
pertama menghasilkan a = 8. Operator / mempunyai prioritas lebih tinggi
sehingga dikerjakan terlebih dahulu
b = 9 / 3 *
2
yang kedua
menghasilkan b = 6. operator / mempunyai prioritas yang sama dengan
prioritas * sehingga operator yang letaknya di sebelah kiri akan dikerjakan
terlebih dahulu.
c = 15 / (6
– 3)
Pernyataan yang
terakhir menghasilkan 5 . Tanda kurung pada kurung pada pernyataan di atas
mengubah urutan pekerjaan. Yang berada dalam kurung dikerjakan terlebih dahulu,
kemudian hasilnya untuk membagi angka di depannya
Operator Penugasan/Assigment
________________________________________________________________________________
operator penugasan (Assignment Operator) adalah
operator yang menggunakan tanda sama dengan (=) untuk mengisi
sebuah nilai dalam suatu variabel
Simbol
|
Keterangan
|
+=
|
Digunakan untuk menaikan nilai terhadap suatu variabel contohnya a
+=2, jika semula variabel a berisi 5 maka a saat ini akaan bernilai 7
|
-=
|
digunakan untuk menurunkan nilai terhadap suatu variabel contohnya a
-=2, jika semula variabel a berisi 5 maka a saat ini akaan bernilai 3
|
/=
|
Digunakan untuk membagi nilai terhadap suatu variabel contohnya a
/=2, jika semula variabel a berisi 5 maka a saat ini akaan bernilai 2.5
|
%=
|
Digunakan untuk memperoleh sisa pembagian nilai terhadap suatu isi
variabel contohnya x%=2, berarti nilai variabel x (bertipe int) akan diisi
dengan sisa pembagian x dengan 2. Kalau misal x berisi 5 maka x saat ini akan
bernilai 1
|
*=
|
Untuk perkalian
|
Contoh :
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);
}
}
Operator
Perbandingan
_______________________________________________________________________ Operator pembanding adalah operator yang berguna untuk melakukan perbandingan terhadap dua buah nilai. Hasil perbandingan bernilai 1 (true) atau 0 (false).
Operator
|
Definisi
|
Contoh
|
Artinya
|
==
|
Sama
|
A == B
|
A sama dengan B
|
!=
|
Tidak sama
|
A != B
|
A tidak sama B
|
<
|
Lebih kecil
|
A < B
|
A lebih kecil dari B
|
>
|
Lebih besar
|
A > B
|
A lebih besar dari B
|
<=
|
Lebih kecil atau sama dengan
|
A <= B
|
A lebih kecil atau sama dengan B
|
>=
|
Lebih besar atau sama dengan
|
A >= B
|
A lebih besar atau sama dengan B
|
Contoh :
Operator
|
Keterangan
|
Contoh
|
&&
|
Operator “and / dan”
|
x
&& y
|
||
|
Operator “or / atau”
|
x || y
|
!
|
Operator “not / bukan”
|
!x
|
public
class
pembandingan
{
public
static
void
main(String
[]args
){
int uang
, barang
;
uang
=
10000;
barang
=
6500;
if(barang
<= uang
)
System
.out
.println("Belanja berhasil");
else
System
.out
.println("Belanja gagal");
System
.out
.println("Copyright Sekolah Program");
}
}
Hasil Output :
Operator
Logika
________________________________________________________________________
Operator logika ini merupakan jenis
operator yang sangat berpengaruh sekali dalam kelangsungan membangun sebuah
aplikasi.
Misalnya, merangkai sebauh logika
yang rapi dan mudah dimengerti untuk aplikasi yang rumit tentunya BUKAN
merupakan pekerjaan yang mudah. Bahkan dilingkungan perkuliahan, materi logika
ini diajarkan hingga satu semester sendiri. Berawal dari itu, operator jenis
ini sering disebut dengan operator yang kompleks.
Operator logika memiliki enam macam operator yang
dapat digunakan untuk membangun sebuah aplikasi, seperti
Untuk lebih memahami, mari dikupas satu perasatu
dimulai dari point yang pertama,
- Operator dan (&)
Operator ini juga digunakan sebagai
operator bitwise bila operan yang digunakan bertipe angka. Kalau operannya
bertipe boolean, maka operator ini akan menghasilkan nilai truedan false,
seperti contoh berikut
class DemoLogika {
public static void main(String[] args) {
int a = 5;
int b = 10;
boolean hasil = (a < 10) & (b > 100);
System.out.println(hasil);
}
}
|
Kode program diatas artinya :
Mendeklarasikan class DemoLogika, yang didalamnya juga
diimplementasi operator logika. Bila kode program diatas dieksekusi, keluaran
yang dihasilkan seperti berikut
Hasilnya adalah : false
|
Perhatikan keluaran yang dihasilkan
diatas, keluaran yang dihasilkan adalah false. Hal itu terjadi karena
operan yang pertama(a<10) mengembalikan nilai true sedangkan operan
kedua(b>100) mengembalikan nilai false. Sedangkan telah diketahui bahwa
syarat utama dari operator ini adalah apabila kedua operan mengembalikan nilai
true, maka true akan dikembalikan sebagai hasil operasi dan sisanya bernilai
false.
Perlu dipahami, bahwa kedua operan
disisi kiri dan kanan tetap dieksekusi walaupun sudah dipastikan operan sebelah
kiri bernila true dan apapun hasil operan sebelah kanan(kecuali true) tetap
akan menghasilkan nilai false.
- Operator singkat dan (&& )
Operator ini berbeda dengan operator
sebelumnya, dimana operator ini tidak akan mengeksekusi operan disebelah kanan
kalau sudah diketahui bahwa operan sebelah kiri bernilai false. Hal inilah yang
menjadi alasan kenapa operator ini disebut dengan operator singkat dan
(&&). Mari diperhatikan contoh dibawah ini untuk lebih memahami,
class DemoLogika1 {
public static void main(String[] args) {
int a = 5;
int b = 10;
boolean hasil = ( a > 10 ) && ( b > 5 );
System.out.println(hasil);
}
}
|
Kode program diatas artinya :
Mendeklarasikan class DemoLogika1, yang didalamnya juga
diimplementasi operator logika. Bila kode program diatas dieksekusi, keluaran
yang dihasilkan seperti berikut
Hasilnya adalah : false
|
Ketika kode program diatas
dieksekusi, keluaran yang dihasilkan adalah false. Hal ini terjadi
karena operan disebelah kiri(a>10) mengembalikan nilai false, maka untuk
operan sebelah kanan tidak dieksekusi, karena operan disebelah kiri
mengembalikan nilai false.
Perilaku operator inilah yang sering
dianggap penting oleh programmer apabila digunakan untuk memastikan bahwa suatu
variabel object tidak bernilai null, sebelum memanggil method dari object
tersebut. Untuk lebih memahami, mari diperhatikan contoh berikut
class DemoLogika2 {
public static void main(String[] args) {
String nama = null;
boolean hasil = (nama != null) &
nama.equals("Andi");
System.out.println("Hasilnya
adalah : " + hasil);
}
}
|
Kode program diatas artinya :
Mendeklarasikan class DemoLogika2, yang didalamnya juga
diimplementasi operator logika. Bila kode program diatas dieksekusi, keluaran
yang dihasilkan seperti berikut
Exception in thread
"main" java.lang.NullPointerException
|
Ketika kode program diatas
dieksekusi, akan mengakibatkan NullPointerException. Karena walaupun sudah
diketahui operan sebelah kiri bernilai false, operan disebelah kanan tetap
dieksekusi,
Berbeda bila kode program diatas
sedikit dirubah dengan mengimplementasikan operator singkat dan(&&),
maka keluaran yang dihasilkan juga akan berbeda, seperti contoh berikut ini
class DemoLogika3 {
public static void main(String[] args) {
String nama = null;
boolean hasil = (nama != null) &&
nama.equals("Andi");
System.out.println("Hasilnya
adalah : " + hasil);
}
}
|
Kode program diatas artinya :
Mendeklarasikan class DemoLogika3, yang didalamnya juga
diimplementasi operator logika. Bila kode program diatas dieksekusi, keluaran
yang dihasilkan seperti berikut
Hasilnya adalah : false
|
Ketika kode program diatas
dieksekusi, keluaran yang dihasilkan adalah false. Hal ini terjadi
karena operan disebelah kiri bernilai false, sehingga untuk operan sebelah
kanan tidak akan dieksekusi.
- Operator or (|)
Operator ini juga digunakan dalam
operasi bitwise jika operannya bertipa angka. Jika operannya berupa boolean,
operator ini akan menghasilkan nilai true, bila salah satu atau kedua operannya
mengembalikan nilai true. Operator ini juga hanya akan mengembalikan nilai
false bila kedua operannya bernilai false, seperti contoh berikut ini
public class DemoLogika4 {
public static void main(String[] args) {
String nama = null;
boolean hasil = (nama == null) | (nama != null);
System.out.println("Hasilnya
adalah : " + hasil);
}
}
|
Kode program diatas artinya :
Mendeklarasikan class DemoLogika4, yang didalamnya juga
diimplementasi operator logika. Bila kode program diatas dieksekusi, keluaran
yang dihasilkan seperti berikut
Hasilnya adalah : true
|
Ketika kode program diatas
dieksekusi, keluaran yang dihasilkan adalah true. Karena operan
disebelah kiri mengembalikan nilai true dan operan disebelah kanan
mengembalikan nilai false. Operator ini juga hanya akan mengembalikan nilai
false bila kedua buah operan bernilai false.
- Operator singkat or(||)
Aturan yang ada pada operator atau
juga berlaku untuk jenis operator ini. Yang membedakan keduanya adalah apabila
operator atau kedua operannya akan tetap dieksekusi walaupun sudah diketahui
nilai dari operan sebelah kanan bernilai true, apapun nilai operan disebelah
kanan pastihasilnya true juga.
Sedangkan bila dalam operator
singkat atau, bila operan sebelah kiri mengembalikan nilai true, maka operan
disebelah kanan tidak akan dieksekusi dan nilai true dikembalikan sebagai hasil
operasinyua. Untuk lebih memahami, mari diperhatikan contoh berikut ini
public class DemoLogika5 {
public static void main(String[] args) {
String nama = null;
boolean hasil = (nama == null) || (nama != null);
System.out.println("Hasilnya
adalah : " + hasil);
}
}
|
Kode program diatas artinya :
Mendeklarasikan class DemoLogika5, yang didalamnya juga
diimplementasi operator logika. Bila kode program diatas dieksekusi, keluaran
yang dihasilkan seperti berikut
Hasilnya adalah : true
|
Ketika kode program diatas
dieksekusi, keluaran yang dihasilkan adalah true. Hal ini terjadi karena operan
disebelah kiri mengembalikan nilai true dan operan disebelah kanan tidak
dieksekusi.
- Operator xor (^)
Operator ini akan menghasilkan nilai
true kalau nulau operan disebelah kiri berbeda dengan operan disebelah kanan.
Misalnya, operan sebelah kiri bernilai true maka operan disebelah kanan
bernilai false atau sebaliknya. Untuk lebih memahami, mari diperhatikan contoh
berikut ini
public class DemoLogika6 {
public static void main(String[] args) {
int a = 10;
int b = 5;
boolean hasil = (a < 15) ^ (b > 6);
System.out.println("Hasilnya
adalah : " + hasil);
}
}
|
Kode program diatas artinya :
Mendeklarasikan class DemoLogika6, yang didalamnya juga
diimplementasi operator logika. Bila kode program diatas dieksekusi, keluaran
yang dihasilkan seperti berikut ini :
Hasilnya adalah : true
|
Ketika kode program diatas
dieksekusi, keluaran yang dihasilkan adalah true. Hal ini terjadi karean operan
disebelah kiri mengembalikan nilai true sebagai hasil dan operan disebelah
kanan bernilai false.
- Operator logika negasi (!)
Operator ini juga disebu sebagai
invers atau negasi. Operator ini akan membalikan nilai boolean true menjadi
false dan begitu juga sebaliknya, seperti contoh berikut
public class DemoLogika7 {
public static void main(String[] args) {
int a = 10;
int b = 5;
boolean hasil = !((a < 15) ^ (b > 6));
System.out.println("Hasilnya
adalah : " + hasil);
}
}
|
Kode program diatas artinya :
Mendeklarasikan class DemoLogika7, yang didalamnya juga
diimplementasi operator logika. Bila kode program diatas dieksekusi, keluaran
yang dihasilkan seperti berikut
Hasilnya adalah : false
|
Hal itu terjadi karena operator ini
membalikan hasil dari operan ((a<15) ^ (b >6)) yang mengembalikan nilai
true sebagai hasi
Comments
Post a Comment