Bir örnek üstünden ilerleyelim. Elimizde aşağıdaki gibi iki değer olsun. Bu değerleri hem BigDecimal, hem double olarak tanımlayalım ve çalıştıralım.
BigDecimal x = new BigDecimal("0.5");
BigDecimal y = new BigDecimal("0.4");
System.out.println ((x.subtract((y))));
double x1 = 0.5;
double y1 = 0.4;
System.out.println(x1-y1);
Sonucun aşağıdaki gibi olduğunu göreceksiniz. Eğer kullandığınız projede virgülden sonraki değerlerin hassasiyeti ve önemi bulunuyorsa yani yuvarlama yapmadan net sonucun görünmesi gerekiyorsa BigDecimal kullanılmalıdır. Sonucun virgül sonraki değerlerinin hassasiyeti önemli değilse ve yuvarlanmış bir değer olması isteniyorsa double tercih edilebilir.
BigDecimal = 0.1
double =0.09999999999999998