
9). Kita tambahkan coding di method main untuk memanggil 3 method diatas, terlihat seperti dibawah ini:
1 2 3 4 5 6 7 8 |
public static void main(String[] args) { System.out.println("Call perkalianPertama()"); perkalianPertama(); System.out.println("Call perkalianKedua()"); perkalianKedua(); System.out.println("Call perkalianKetiga()"); perkalianKetiga(); } |
10). Inilah hasil dari proses perkalianPertama, perkalianKedua, perkalianKetiga
1 2 3 4 5 6 |
Call perkalianPertama() 5000 Call perkalianKedua() 90.00000000000000222044604925031308084726333618164062500 Call perkalianKetiga() 90 |
11). Nah loooo, kok nilai perkalianKedua bukan 90 aja ya?
Dari simulasi ini bisa kita asumsikan setiap perkalian dengan nilai decimal maka BigDecimal akan memberikan nilai precision seperti terlihat pada method perkalianKedua. untuk mengatasi ini bisa kita lakukan dengan melakukan setScale dengan rounding-mode yang kita inginkan atau
Kita bisa menggunakan cara perkalianKetiga, kita rubah nilai decimal ke nilai integer. misal: a*0.9 kita bisa ganti dengan a*90/100
Demikian simulasi karakteristik tipe data BigDecimal dalam hal perkalian/multiply, semoga dapat membantu Anda.
Salam berbagi,