Tutorial Belajar Java Part 23: Jenis-jenis Operator Aritmatika Bahasa Java

Dalam tutorial belajar bahasa Java kali ini kita akan mempelajari tentang Jenis-jenis Operator Aritmatika dalam Bahasa pemrograman Java.


Operator aritmatika adalah operator yang biasa kita temukan untuk operasi matematika. Aritmatika sendiri merupakan cabang ilmu matematika yang membahas perhitungan sederhana seperti kali, bagi, tambah dan kurang (kabataku).

Selain keempat operasi tersebut, bahasa Java juga memiliki operasi modulo division, atau operator % yang dipakai untuk mencari sisa hasil bagi.

Tabel berikut merangkum operator aritmatika dalam bahasa pemrograman Java:

Operator Penjelasan Contoh
+ Penambahan a = 5 + 2
Pengurangan a = 5 – 2
* Perkalian a = 5 * 2
/ Pembagian a = 5 / 2
% Sisa hasil bagi (modulus) a = 5 % 2

Operator Aritmatika Unary

Operator Penjelasan Contoh
+ Positif (plus) +5
Negatif (min) -3

Contoh Kode Program Operator Aritmatika Bahasa Java

Berikut contoh kode program penggunaan operator aritmatika dalam bahasa Java:

class BelajarJava {
  public static void main(String args[]){
    
  int a, b, c, d, e, f;
 
  a = 8 + 4;
  b = 9 - 2;
  c = 2 * 3;
  d = 10 + 3 - 7 * 4;
  e = ( ( 10 +3 ) -7) * 4;
  f = -79;
 
  System.out.println("Isi variabel a: " + a); 
  System.out.println("Isi variabel b: " + b); 
  System.out.println("Isi variabel c: " + c); 
  System.out.println("Isi variabel d: " + d); 
  System.out.println("Isi variabel e: " + e); 
  System.out.println("Isi variabel f: " + f); 
    
  }
}

Hasil kode program:

Isi variabel a: 12
Isi variabel b: 7
Isi variabel c: 6
Isi variabel d: -15
Isi variabel e: 24
Isi variabel f: -79

Dalam contoh ini saya membuat beberapa operasi aritmatika, yakni penambahan, pengurangan dan perkalian.

Aturan prioritas operator berlaku di sini, dimana operator perkalian dan pembagian akan dijalankan terlebih dahulu daripada operator pengurangan dan penambahan. Untuk operator yang sama kuat (seperti penambahan dan pengurangan), akan diproses dari kiri ke kanan.

Tanda kurung bisa dipakai untuk memprioritaskan operator tertentu, seperti untuk menghitung variabel e dalam contoh di atas.

Saya sengaja tidak menampilkan operator pembagian karena ada beberapa hal yang akan kita bahas. Perhatikan kode berikut ini:

class BelajarJava {
  public static void main(String args[]){
    
  int a, b, c;
 
  a = 8 / 4;
  b = 8 / 3;
  c = 8 / 2;
 
  System.out.println("Isi variabel a: " + a); 
  System.out.println("Isi variabel b: " + b); 
  System.out.println("Isi variabel c: " + c); 
 
  }
}

Hasil kode program:

Isi variabel a: 2
Isi variabel b: 2
Isi variabel c: 4

Di sini saya membuat 3 variabel integer: a, b, c. Untuk operasi a dan c tidak ada masalah, hasilnya sesuai dimana 8 / 4 = 2 dan 8 / 2 = 4.

Tapi kenapa 8 / 3 menghasilkan angka 2? Mungkin ini karena b di set sebagai integer, bukan float atau double. Mari kita ubah tipe datanya:

class BelajarJava {
  public static void main(String args[]){
    
  double a; 
  a = 8 / 3;
  System.out.println("Isi variabel a: " + a); 
  
  }
}

Hasil kode program:

Isi variabel a: 2.0

Mengapa hasilnya tetap 2? Ini terjadi karena bahasa Java melihat tipe data operand yang dipakai. Di sini operand nya adalah 8 dan 3 yang merupakan integer (angka bulat).

Agar operasi pembagian menghasilkan nilai pecahan (float / double), kedua operand harus ditulis dalam format pecahan, yakni 8.0 dan 3.0. Berikut hasilnya:

class BelajarJava {
  public static void main(String args[]){
    
  double a; 
  a = 8.0 / 3.0;
  System.out.println("Isi variabel a: " + a); 
  
  }
}

Hasil kode program:

Isi variabel a: 2.6666666666666665

Sekarang hasilnya sudah sesuai dimana 8.0 / 3.0 adalah 2.6666666666666665.

Jika kita ingin memformat tampilan akhir agar lebih rapi misalnya menjadi 2.67, terdapat beberapa cara yang disediakan bahasa Java. Yang paling sederhana adalah dengan menggunakan perintah String.format() seperti contoh berikut:

class BelajarJava {
  public static void main(String args[]){
    
  double a; 
  String b;
  
  a = 8.0 / 3.0;
  System.out.println("Isi variabel a: " + a); 
  
  b = String.format("%.2f", a);
  System.out.println("Isi variabel b: " + b); 

  }
}

Hasil kode program:

Isi variabel a: 2.6666666666666665
Isi variabel b: 2,67

Di baris 10 saya mengisi variabel b dengan hasil dari perintah String.format("%.2f", a). Perintah String.format() sendiri mengambil cara penulisan printf() dari bahasa C, dimana format yang dipakai adalah sebagai berikut:

%(0)(jumlah total digit).(jumlah angka di belakang koma)%f

Penjelasan lebih lengkap bisa di baca pada tutorial Pengertian dan Contoh Kode Program Tipe Data Float Bahasa C.

Hasil akhir dari String.format() berupa tipe data String, bukan angka float atau double. Selain itu perintah ini menerapkan localization, maksudnya jika terdeteksi sistem berada di Indonesia, penanda pecahan berubah jadi koma, bukan titik.


Pengertian Operator Mod (Modulus)

Operator mod (singkatan dari modulo atau modulus) dipakai untuk mencari nilai sisa pembagian. Operator mod perlu penjelasan tersendiri terutama bagi yang baru pertama kali belajar bahasa pemrograman komputer. Operator ini terdengar asing tapi sebenarnya cukup sederhana.

Sebagai contoh:

  • 8 mod 5 = 3, karena 3 adalah angka sisa pembagian.
  • 100 mod 7 = 2, karena hanya 98 yang habis dibagi 7 (bersisa 2).

Berikut contoh kode program penggunaan operator mod dalam bahasa Java:

class BelajarJava {
  public static void main(String args[]){
    
  int a, b, c, d; 
  
  a = 8 % 4; 
  b = 8 % 5; 
  c = 10 % 2; 
  d = 100 % 7;
  
  System.out.println("Isi variabel a: " + a); 
  System.out.println("Isi variabel b: " + b); 
  System.out.println("Isi variabel c: " + c); 
  System.out.println("Isi variabel d: " + d); 

  }
}

Hasil kode program:

Isi variabel a: 0
Isi variabel b: 3
Isi variabel c: 0
Isi variabel d: 2

Operator modulus ini cukup sering dipakai, misalnya menentukan sebuah bilangan genap atau ganjil. Untuk keperluan ini kita bisa memeriksa apakah a % 2 menghasilkan 0? Jika iya, maka a berisi bilangan genap.


Dalam tutorial bahasa Java kali ini kita telah membahas cara penggunaan operator aritmatika. Selain itu juga disinggung cara penggunaan operasi pembagian bahasa Java yang butuh sedikit trik, serta pengertian dari operator modulus.

Selanjutnya, kita akan membahas Operator Increment dan Decrement dalam Bahasa Java.

One Response

  1. Eva
    11 May 21

Add Comment