Alex Rivera | Logout

Formatting a double and not rounding off

Asked 2011-12-19T11:28:46.583
21

I need to format (and not round off) a double to 2 decimal places.

I tried with:

String s1 = "10.126";
Double f1 = Double.parseDouble(s1);
DecimalFormat df = new DecimalFormat(".00");
System.out.println("f1"+df.format(f1));

Result:

10.13

But I require the output to be 10.12

Edit
Report

1 Answer

3

Why not use BigDecimal

BigDecimal a = new BigDecimal("10.126");
BigDecimal floored = a.setScale(2, BigDecimal.ROUND_DOWN);  //  == 10.12
answered 2011-12-19T14:35:29.147

Your Answer