Remove Trailing zeros BigDecimal Java


If you do not want decimals places for numeric values whose precision has been set (to say 2 decimal places) when it has trailing zeros

e.g. 2020 instead of 2020.00

DecimalFormat class is the good way to achieve it.

Sample Program:

import java.math.BigDecimal;
import java.text.DecimalFormat;
public class NoTrailingZerosEg {
    public static void main(String[] args) {
        BigDecimal number1 = new BigDecimal(2014.100);
        
        BigDecimal number2 = new BigDecimal(2014.06);
        
        BigDecimal number3 = new BigDecimal(2014.00);
        DecimalFormat decFormat = new DecimalFormat();
        decFormat.setMaximumFractionDigits(2);
        decFormat.setMinimumFractionDigits(0);
        
        
        System.out.println(decFormat.format(number1));
        
        System.out.println(decFormat.format(number2));
        
        System.out.println(decFormat.format(number3));
    }
}
Output:

2,014.1
2,014.06
2,014