I need to remove trailing zeros from BigDecimal along with RoundingMode.HALF_UP. For instance,
Value Output
15.3456 <=&
Note that stripTrailingZeros() doesn't do very well either.
On this:
val = new BigDecimal("0.0000").stripTrailingZeros();
System.out.println(val + ": plain=" + val.toPlainString());
val = new BigDecimal("40.0000").stripTrailingZeros();
System.out.println(val + ": plain=" + val.toPlainString());
val = new BigDecimal("40.50000").stripTrailingZeros();
System.out.println(val + ": plain=" + val.toPlainString());
Output (Java 7):
0.0000: plain=0.0000
4E+1: plain=40
40.5: plain=40.5
Output (Java 8):
0: plain=0
4E+1: plain=40
40.5: plain=40.5
The 0.0000 issue in Java 7 is fixed in Java 8 by the following java fix.