Ada beberapa cara pembulatan pada java. Misalnya pada angka 2.123456 ingin kita bulatkan dengan dua angka di belakang koma sehingga menjadi 2.12. Untuk kasus contoh ini caranya adalah sebagai berikut:
double a1 = 2.123456; DecimalFormat twoDForm = new DecimalFormat("#.##"); double a2 = Double.valueOf(twoDForm.format(a1)); System.out.println(a2); // jika dikalikan maka yang digunakan adalah angka yang terakhir (a2) bukan yang awal (a1): double a3 = a2 * 123; System.out.println(a3);
“#.##” menunjukkan dua angka di belakang koma, kalau empat angka tinggal tambahkan tanda ‘#’ empat angka di belakang koma.
-= Sapto Sutardi =-
Mataram, 18 Agustus 2010
Posted by justier on Maret 22, 2011 at 4:58 pm
thanks gan,,sangat membantu….
dan mudah dimengerti….
good job….^^
Posted by aisha on Agustus 22, 2011 at 1:10 pm
makasi… 🙂
Posted by sadd on Oktober 13, 2011 at 7:17 pm
gan itu pembulatan juga atau hanya menampilkan 2 di blakang koma??
contohnya
klo 2,427 di bulatkan 2 di blakang koma kan jadinya 2,43
atau
2,42
thx gan sebelumnya
Posted by sapto on Oktober 25, 2011 at 11:30 pm
yup
Posted by koko on Oktober 22, 2011 at 9:57 am
Koq panjang ya,,, beda sama yang di c atau pascal.
kalo di C kan cuma %5.2f , dimana 5 adl angka didepan koma dan dua angka dibelakang koma,,,
sedang di pascal cuma nama_variabel:5:2 dimana 5 adl angka didepan koma dan dua angka dibelakang koma,,,
Posted by sapto on Oktober 25, 2011 at 11:28 pm
Yup. Emang beda.
Posted by ilhamia on November 27, 2011 at 8:10 pm
gimana kalo pembulatan yang ada pd JFrame…??? mohon bantuannya…
Posted by kurniawan on November 29, 2011 at 2:06 pm
kok ga bisa om? pesan yang keluar kaya gini
“Exception in thread “main” java.lang.Error: Unresolved compilation problems:
DecimalFormat cannot be resolved to a type
DecimalFormat cannot be resolved to a type
at desimal.main(desimal.java:10)”
ini syntak nya
public class desimal {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
double a1 = 2.123456;
DecimalFormat twoDForm = new DecimalFormat(“#.##”);
double a2 = Double.valueOf(twoDForm.format(a1));
System.out.println(a2);
// jika dikalikan maka yang digunakan adalah angka yang terakhir (a2) bukan yang awal (a1):
double a3 = a2 * 123;
System.out.println(a3);
}
}
Posted by iqbal on April 22, 2013 at 10:24 am
import java.text.DecimalFormat; di atas class
Posted by Riyan on Desember 20, 2011 at 7:58 pm
kalo ga pake koma gemana.?
Posted by Belajar Java on September 17, 2012 at 1:13 pm
Ada cara yang lebih mudah ngak?
Ngak pake BigDecimal.
Posted by Pri Yan To on Desember 9, 2012 at 9:35 am
gak jalan karena titik diubah menjadi koma sehingga tidak bisa di convert ke Double.
mohon koreksinya…
Posted by sugi on November 30, 2014 at 9:01 pm
klu doble it kita ganti float, kok ga bisa gan..mohon penjelasan lebih lanjut.tks