JOBSHEET
OPERATOR BAHASA JAVA
Disusun Oleh :
Achmad Fauzi ([Link].01)
IK-1B
PROGRAM STUDI TEKNIK
INFORMATIKA JURUSAN TEKNIK
ELEKTRO POLITEKNIK NEGERI
SEMARANG
2018
Daftar Isi
A. Tujuan....................................................................................................................................3
B. Dasar Teori............................................................................................................................3
1. Operator Aritmatika.........................................................................................................3
2. Operator Bitwise Integer.................................................................................................4
3. Operator Relasi................................................................................................................5
4. Operator Logika Boolean................................................................................................5
5. Preseden Operator...........................................................................................................7
C. Langkah Kerja.......................................................................................................................8
D. Latihan.................................................................................................................................13
Daftar Pustaka............................................................................................................................20
Lampiran....................................................................................................................................20
Achmad Fauzi | Operator Bahasa Java Page | 2
A. Tujuan
Setelah menyelesaikan materi ini mahasiswa dapat:
1. Menjelaskan tentang operator dalam Java.
2. Menyebutkan jenis operator.
3. Menyebutkan operator presedence.
4. Membuat program mengunakan operator.
B. Dasar Teori
Operator adalah karakter khusus yang memerintahkan compiler untuk melakukan
operasi terhadap sejumlah operand. Perintah operasi dispesifikasikan oleh operator yang
operandnya berupa variabel, pernyataan atau konstanta.
Menurut tempatnya dan operand yang diproses, operator dibagi menjadi 5 yaitu :
Operator unary : operator yang mengolah satu operand.
Operator prefiks : operator yang ditempatkan sebelum operand.
Operator biner infiks : operator yang ditempatkan diantara dua operand.
Operator postfiks : operator yang ditempatkan setelah operand.
Operator ternary : operator yang membutuhkan tiga operand
Menurut jenisnya operator dasar Java ada 4 yaitu : aritmatika, bitwise, relasi dan logika.
1. Operator Aritmatika
Digunakan untuk proses matematik. Operator aritmatika tidak bisa digunakan untuk
tipe boolean tetapi dapat digunakan pada tipe char. Anggota dari operator aritmatika sebagai
berikut:
Operator Hasil
+ Penjumlahan
+= Persamaan penjumlahan
- Pengurangan (unary minus)
-= Persamaan Pengurangan
* Perkalian
*= Persamaan Perkalian
/ Pembagian
Achmad Fauzi | Operator Bahasa Java Page | 3
/= Persamaan Pembagian
% Modulus (sisa pembagian)
%= Persamaan Modulus
++ Penambahan
-- Pengurangan
Contoh :
int a = 1 + 1;
int b = a * 5;
int c = b / 10;
int d = c - 1;
int e = -a;
int x = 42 % 10; // Modulus/pembagian sisa nilai x = 2
i += 4; // artinya i = i + 4
j -= 2; // artinya j = j - 2
k *= 3; // artinya k = k * 3
a /= 2; // artinya a = a / 2
b %= 2; // artinya b = b % 2
2. Operator Bitwise Integer
Tipe numerik integer: long, int, short, char dan byte memiliki operator tambahan yang
dapat memodifikasi dan memeriksa bit-bit yang menyusun nilainya. Operatornya adalah
sebagai berikut :
Operator Hasil
~ Unary NOT
& AND
| OR
^ Exclusive OR
>> Shift kanan
>>> Shift kanan, isi dengan nol
<< Shift kiri
&= Pernyataan AND
|= Pernyataan OR
Achmad Fauzi | Operator Bahasa Java Page | 4
^= Pernyataan exclusive OR
>>= Pernyataan shift kanan
>>>= Pernyataan shift kanan, isi dengan nol
<<= Pernyataan shift kiri
Operator bitwise mengkonversi bilangan desimal ke dalam bentuk biner kemudian
dimanipulasi sesuai dengan tanda operatornya.
3. Operator Relasi
Digunakan untuk membandingkan dua buah nilai, yang dijabarkan pada tabel berikut :
Operator Hasil
== Sama dengan
!= Tidak sama dengan
> Lebih besar dari
< Lebih kecil dari
>= Lebih besar sama dengan
<= Lebih kecil sama dengan
Semua operator di atas akan menghasilkan nilai boolean (true dan false) contoh :
int a = 4;
int b = 2;
boolean c = a < b; // c bernilai false
4. Operator Logika Boolean
Operator ini bekerja pada operand boolean, yang akan memanipulasi nilai boolean
untuk menghasilkan nilai boolean pula, contoh :
Operator Hasil
& Logika AND
| Logika OR
Achmad Fauzi | Operator Bahasa Java Page | 5
^ Logika XOR
|| Hubungan-singkat OR
&& Hubungan-singkat AND
! Hubungan-singkat NOT
&= Pernyataan AND
!= Pernyataan OR
^= Pernyataan XOR
== Sama dengan
!= Tidak sama dengan
?: Operator ternary if-then-else
boolean a = true;
boolean b = false;
boolean c = a | b;
boolean d = a & b;
Operator hubung singkat (short circuit logical operator) digunakan apabila ada dua
operan (operan kanan dan kiri) dimana operan kanan bergantung dari operan kiri, baik true
maupun false.
Contoh : if (denom != 0 && num / denom > 10)
Keterangan :
Bila nilai denom = 0, maka nilainya adalah false sehingga operan kanan tidak akan
diperiksa karena hasilnya false sesuai dengan operan kiri.
Bila nilai denom != 0, maka nilainya adalah true dan perlu diANDkan dengan
num/denom > 10, sehingga operan kiri dan kanan perlu diANDkan untuk mengetahui
hasil logikanya (TRUE atau FALSE)
Operator Ternary if –then-else membutuhkan 3 parameter yang bentuknya adalah
sebagai berikut :
Expression ? statement1 : statemen2
Achmad Fauzi | Operator Bahasa Java Page | 6
Keterangan : expression berupa pernyataan yang memeriksa besaran Boolean. Jika hasilnya
true maka statement1 dijalankan, sebaliknya jika hasilnya flase maka statement2 dijalankan.
Syaratnya staement1 dan 2 harus menghasilkan tipe yang sama dan tidak boleh void.
Contoh :
Ratio = denom == 0 ? 0 : num / denom;
Ketika dijalankan Java akan memeriksa pernyataan di sebelah kiri ? (denom == 0),
jika denom = 0 maka pernyataan diantara tanda ? dan : akan diperiksa dan ditetapkan sebagai
hasil/nilai Ratio, sebaliknya jika tidak sama dengan 0 maka pernyataan num / denom yang
ditetapkan sebagai hasil/nilai Ratio.
5. Preseden Operator
Preseden operator menunjukan adanya urutan tingkatan operator (hirarki) yang
penjabarannya pada tabel berikut :
tertinggi
() []
++ -- ~ !
* / %
+ -
>> >>> <<
> >= < <=
== !=
&
^
|
&&
||
?:
terendah
Achmad Fauzi | Operator Bahasa Java Page | 7
C. Langkah Kerja
1. Jalankan Edit Plus, buat file baru java dan ketikkan kode program berikut :
class Aritmatika1
{
public static void main(String[] args)
{
int a = 1 + 1;
int b = a * 3;
int c = b / 4;
int d = b - a;
int e = -d;
[Link]("a = " + a);
[Link]("b = " + b);
[Link]("c = " + c);}
[Link]("d = " + d);
[Link]("e = " + e);
}
}
Achmad Fauzi | Operator Bahasa Java Page | 8
2. Simpan program Java di atas.
3. Eksekusi program Java Pertama dengan mengklik Tool → Compile Program Java. Lalu
Tool → Menjalankan Program Java.
4. Ketikkan kode program Java berikut ini :
class Aritmatika2 {
public static void main(String[] args)
{
int x = 42;
double y = 42.3;
int a = 1;
int b = 2;
int c = 3;
a += 5;
b += 4;
c += a * b;
c %= 6;
[Link]("x mod 10 = " + x % 10);
[Link]("y mod 10 = " + y % 10);
[Link]("a = " + a);
[Link]("b = " + b);
[Link]("c = " + c);
}
}
Achmad Fauzi | Operator Bahasa Java Page | 9
class Aritmatika3 {
public static void main(String[] args)
{
int a = 1;
int b = 2;
int c = ++b; // ++b artinya b = b + 1
int d = a++;
c ++;
[Link]("a = " + a);
[Link]("b = " + b);
[Link]("c = " + c);
[Link]("d = " + d);
}
}
Achmad Fauzi | Operator Bahasa Java Page | 10
class Bitlogic {
public static void main(String[] args)
{
String binary[] {
"0000", "0001", "0010", "0011", "0100", "0101", "0110",
"0111", "1000", "1001", "1010", "1011", "1100", "1101"
"1110", "1111" };
int a = 3;
int b = 6;
int c = a b;
int d = a & b;
int e = a ^ b;
int f = (~a & b) (a & ~b);
int g = ~a & 0x0f; // nilai ~a agar kurang dari 16
[Link]("a = " + binary[a]);
[Link]("b = " + binary[b]);
[Link]("a b = " + binary[c]);
[Link]("a & b = " + binary[d]);
[Link]("a ^ b = " + binary[e]);
[Link]("~a & ba & ~b = " + binary[f]);
[Link]("~a = " + binary[g]);
}
}
Achmad Fauzi | Operator Bahasa Java Page | 11
5. Ulangi langkah nomor 3, amati dan catat hasilnya!
Aritmatika2
Aritmatika3
Achmad Fauzi | Operator Bahasa Java Page | 12
BitLogic
D. Latihan
1. Jelaskan apa yang dimaksud operator, operand dan
precedence! Operand adalah nilai asal yang digunakan didalam
proses operasi
Operator adalah instruksi yang diberikan untuk mendapatkan hasil dari proses tersebut
Operator Precedence adalah cara computer dalam pengoperasian perhitungan yang
mengurutkan mana yang harus terlebih dahulu di operasikan
Achmad Fauzi | Operator Bahasa Java Page | 13
2. Sebutkan jenis operator dalam Java! Dan berikan contoh masing-masing.
Aritmatika, digunakan untuk operasi matematika.
Operator Keterangan
+ Penjumlahan
- Pengurangan
/ Pembagian
* Perkalian
% Sisa Pembagian
Penugasan, digunakan untuk memberi tugas suatu variable untuk melakukan suatu
proses.
Operator Keterangan
= Pemberian nilai
+= Penambahan Bilangan
-= Pengurangan Bilangan
/= Pembagian Bilangan
% Peroleh Sisa Pembagian
Pembanding, digunakan untuk membandingkan antara dua buah nilai dengan hasilnya
berupa tipe data Boolean.
Operator Keterangan
== Sama Dengan
!= Tidak Sama Dengan
> Lebih Dari
< Kurang Dari
>= Lebih Dari Sama Dengan
<= Kurang Dari Sama Dengan
Logika, suatu operator yang membandingkan dua bukan KONDISI , mirip seperti dengan
operator pembanding dan menghasilkan tipe data Boolean.
Operator Keterangan
&& Dan (AND)
|| Atau (OR)
Achmad Fauzi | Operator Bahasa Java Page | 14
3. Sebutkan hasil dari perhitungan di bawah ini :
A = 10 / 2 * 5 – 2 >> 3;
B = 4 * 3 / 4 << 5 – 4;
C = (b == 0) ? 0 : ( A / B);
Achmad Fauzi | Operator Bahasa Java Page | 15
4. Buat program untuk menghitung operasi penjumlahan, pengurangan, perkalian dan
pembagian!
public static void main(String[] args) {
try {
int a, b, c;
double bagi, x, y;
int jumlah, kurang, kali;
BufferedReader br = new BufferedReader(new
InputStreamReader([Link]));
DecimalFormat df = new DecimalFormat("#.##");
[Link]("Masukkan nilai ke-1");
a = [Link]([Link]());
[Link]("Masukkan nilai ke-2");
b = [Link]([Link]());
x = a;
y = b;
jumlah = a + b;
kurang = a - b;
kali = a * b;
bagi = x / y;
[Link]("Hasil Penjumlahan = "+jumlah);
[Link]("Hasil Pengurangan = "+kurang);
[Link]("Hasil Perkalian = "+kali);
[Link]("Hasil Pembagian = "+[Link](bagi));
} catch (IOException ex) {
[Link]([Link]()).log([Link],
null, ex);
}
}
Achmad Fauzi | Operator Bahasa Java Page | 16
5. Buatlah program untuk menghitung :
a. Luas persegi panjang,
b. Luas lingkaran,
c. Luas bujur sangkar.
public static void main(String[] args) {
try {
int x, a, b;
Achmad Fauzi | Operator Bahasa Java Page | 17
BufferedReader br = new BufferedReader(new
InputStreamReader([Link]));
DecimalFormat df = new DecimalFormat("#.##");
[Link]("Program penghitung luas");
[Link]("1. Persegi Panjang");
[Link]("2. Lingkaran");
[Link]("3. Bujur Sangkar");
[Link]("0. Keluar");
[Link]("");
[Link]("Pilihan Anda:");
x = [Link]([Link]());
[Link]("");
switch (x) {
case 1:
[Link]("Masukkan nilai panjang: ");
a = [Link]([Link]());
[Link]("Masukkan nilai lebar: ");
b = [Link]([Link]());
[Link]("");
[Link]("Luas Persegi Panjang :
"+luasPersegiPanjang(a,b));
break;
case 2:
[Link]("Masukkan nilai jari-jari: ");
a = [Link]([Link]());
[Link]("");
[Link]("Luas Lingkaran :
"+luasLingkaran(a));
break;
case 3:
[Link]("Masukkan nilai diagonal 1: ");
a = [Link]([Link]());
[Link]("Masukkan nilai diagonal 2: ");
b = [Link]([Link]());
[Link]("");
[Link]("Luas Bujur Sangkar:
"+luasBujurSangkar(a,b));
break;
Achmad Fauzi | Operator Bahasa Java Page | 18
case 0:
Achmad Fauzi | Operator Bahasa Java Page | 19
[Link]("Terimakasih");
break;
default:
[Link]("Error!");
break;
}
} catch (IOException ex) {
[Link]([Link]()).log([Link],
null, ex);
}
static double luasPersegiPanjang(int panjang, int lebar){
double luas = panjang * lebar;
return luas;
}
static double luasLingkaran(int jari){
double luas = 22 * jari * jari / 7;
return luas;
}
static double luasBujurSangkar(int d1, int d2){
double luas = d1 * d2 / 2;
return luas;
}
Achmad Fauzi | Operator Bahasa Java Page | 20
Daftar Pustaka
Modul Pemrograman Berbasis [Link]
[Link]
Lampiran
Achmad Fauzi | Operator Bahasa Java Page | 21