MODUL 3 – OPERATOR
Java adalah bahasa pemrograman yang mempunyai banyak operator. Secara garis besar operator dapat
digolongkan dalam 2 bentuk dasar, yaitu unary operator dan binary operator. Unary operator adalah
operator yang hanya melibatkan 1 operan. Sedangkan binary operator adalah operator yang
melibatkan 2 operan. Tetapi dilihat dari macamnya Java mempunyai empat jenis operator yaitu :
operator aritmatika, relasional, logika dan bitwise.
A. Operator Aritmetika Dasar
Operator aritmetika adalah operator yang berfungsi perhitungan matematis. Yang termasuk dalam
arithmatic operator adalah sebagai berikut :
+ : Penjumlahan
- : Pengurangan
* : Perkalian
/ : Pembagian
% : Modulus (sisa hasil bagi)
++ : Increment (menaikkan nilai dengan 1)
-- : Decrement(menurunkan nilai dengan 1)
Berikut ini contoh program menggunakan operator aritmetika
class Program1
{
public static void main(String[] args)
{
[Link]("Operasi aritmetika " + "pada tipe integer");
int a = 7 + 4;
int b = a - 4;
int c = a * b;
int d = c / 3;
int e = -a;
[Link]("Nilai a: " + a);
[Link]("Nilai b: " + b);
[Link]("Nilai c: " + c);
[Link]("Nilai d: " + d);
[Link]("Nilai e: " + e);
[Link]();
[Link]("Operasi aritmetika " + "pada tipe floating-point");
double fa = 7 + 4;
double fb = fa - 4;
double fc = fa * fb;
double fd = fc / 3;
double fe = -a;
[Link]("Nilai fa: " + fa);
[Link]("Nilai fb: " + fb);
[Link]("Nilai fc: " + fc);
[Link]("Nilai fd: " + fd);
[Link]("Nilai fe: " + fe);
}
}
B. Operator Modulus (Sisa Bagi)
Operator modulus (%) digunakan untuk menentukan sisa hasil bagi dari sebuah operasi pembagian bilangan
bulat maupun bilangan riil. Berikut ini contoh program menggunakan operator modulus
class Program2
{
public static void main(String[] args)
{
int a=25, b=6;
int c = a % b;
1
double d = 17.75;
double e = d % b;
[Link]("Sisa bagi " + a + "/" + b + " adalah " + c);
[Link]("Sisa bagi " + d + "/" + b + " adalah " + e);
}
}
C. Operator Increment - Decrement
Increment – decrement operator adalah operator yang berguna untuk menaikkan 1 nilai
(increment) dan menurunkan 1 nilai (decrement). Berdasarkan urutan eksekusi penaikan dan
penurunan nilainya, increment-decrement operator ini dapat diklasifikasikan menjadi 2 macam, yaitu
pre-increment/decrement dan post-increment/decrement.
Berikut ini contoh program menggunakan operator increment
class Program3
{
public static void main(String[] args)
{
int a=17;
[Link]("Pre-increment");
[Link]("a\t: " + a);
[Link]("++a\t: " + ++a);
[Link]("a\t: " + a);
int b=17;
[Link]("\nPost-increment");
[Link]("b\t: " + b);
[Link]("b++\t: " + b++);
[Link]("b\t: " + b);
}
}
Berikut ini contoh program menggunakan operator decrement
class Program4
{
public static void main(String[] args)
{
int a=17;
[Link]("Pre-decrement");
[Link]("a\t: " + a);
[Link]("--a\t: " + --a);
[Link]("a\t: " + a);
int b=17;
[Link]("\nPost-decrement");
[Link]("b\t: " + b);
[Link]("b--\t: " + b--);
[Link]("b\t: " + b);
}
}
D. Operator Relasional
Operator relasional adalah operator yang menyatakan hubungan antara satu operand dengan operand
lainnya. Hasil yang diberikan dari operasi ini akan bernilai boolean (true/false).
Operator Keterangan
== sama dengan
!= tidak sama dengan
> lebih besar
< lebih kecil
2
>= lebih besar atau sama dengan
<= lebih kecil atau sama dengan
Berikut ini contoh program menggunakan operator relasional
class Program5
{
public static void main(String[] args)
{
int a=7, b=17;
[Link]("a == b bernilai " + (a == b));
[Link]("a != b bernilai " + (a != b));
[Link]("a > b bernilai " + (a > b));
[Link]("a < b bernilai " + (a < b));
[Link]("a >= b bernilai " + (a >= b));
[Link]("a <= b bernilai " + (a <= b));
}
}
E. Operator Logika
Operator logika digunakan untuk melakukan operasi terhadap dua operand yang bertipe Boolean. Hasil
yang diberikan dari operasi ini juga akan bertipe Boolean.
Operator Keterangan
&& and
|| or
^ nor
! not
Berikut ini contoh program menggunakan operator logika
class Program6
{
public static void main(String[] args)
{
[Link]("Operasi AND");
[Link]("true && true = " + (true && true));
[Link]("true && false = " + (true && false));
[Link]("false && true = " + (false && true));
[Link]("false && false = " + (false && false));
[Link]("\nOperasi OR");
[Link]("true || true = " + (true || true));
[Link]("true || false = " + (true || false));
[Link]("false || true = " + (false || true));
[Link]("false || false = " + (false || false));
[Link]("\nOperasi XOR");
[Link]("true ^ true = " + (true ^ true));
[Link]("true ^ false = " + (true ^ false));
[Link]("false ^ true = " + (false ^ true));
[Link]("false ^ false = " + (false ^ false));
[Link]("\nOperasi NOT");
[Link]("!true = " + (!true));
[Link]("!false = " + (!false));
}
}
F. Operator Bitwise
Operator bitwise digunakan untuk melakukan operasi boolean terhadap dua buah operand bertipe integer.
Operasi ini dilakukan bit demi bit. Berikut ini contoh program menggunakan operator logika
3
class Program7
{
public static void main(String[] args)
{
int hasil, nilai;
// untuk nilai negatif
nilai = -7;
hasil = nilai < 0 ? -nilai : nilai;
[Link]("| " + nilai + " | = " + hasil);
// untuk nilai positif
nilai = 7;
hasil = nilai < 0 ? -nilai : nilai;
[Link]("| " + nilai + " | = " + hasil);
}
}
G. OPERATOR KONDISI (?:)
Operator kondisi ?: adalah operator ternary. Berarti bahwa operator ini membawa tiga argument yang
membentuk suatu ekspresi bersyarat. Struktur pernyataan yang menggunakan operator kondisi adalah,
exp1?exp2:exp3
Dimana nilai exp1 adalah suatu pernyataan boolean yang memiliki hasil yang salah satunya harus berupa
nilai true atau false. Jika exp1 bernilai true, exp2 merupakan hasil operasi. Jika bernilai false, kemudian
exp3 merupakan hasil operasinya.
class Program8
{
public static void main( String[] args )
{
String Status = "";
int Nilai = 80;
//mendapatkan status pelajar
Status = (Nilai >= 60)?"LULUS":"GAGAL";
//print status
[Link]( Status );
}
}
TUGAS 1 : Mendapatkan nilai rata-rata dari tiga angka
Buatlah program yang menghasilkan output nilai rata-rata dari tiga angka. Nilai dari masing-masing tiga
angka tersebut adalah 10, 20 dan 45. Tampilan Output yang diharapkan adalah,
number 1 = 10
number 2 = 20
number 3 = 45
Rata-rata = 25
TUGAS 2 : Menampilkan nilai terbesar
Diberikan tiga angka, tuliskan program yang menghasilkan output angka dengan nilai terbesar diantara tiga
angka tersebut. Gunakan operator kondisi ?: yang telah kita pelajari sebelumnya (PETUNJUK: Anda akan
perlu menggunakan dua set operator ?: untuk memecahkan permasalahan ini). Sebagai contoh, diberikan
angka 10, 23 dan 5. Program Anda akan menghasilkan output,
Number 1 = 10
Number 2 = 23
Number 3 = 5
Nilai tertingginya adalah angka = 23