应用场景: 对逗号格式的两位小数点数字进行解析和转换。
public void calculateTest(){
BigDecimal number1 = transfer2BigDecimal("1,111,111,111.11");
BigDecimal number2 = transfer2BigDecimal("1,111,111,111.11");
BigDecimal sumNumber = number1.add(number2);
System.out.println(sumNumber);
DecimalFormat df = new DecimalFormat("#,###.00");
String strSumNumber = df.format(sumNumber);
if (strSumNumber.indexOf(".") == 0) {
strSumNumber = "0" + strSumNumber;
}
System.out.println(strSumNumber);
}
private BigDecimal transfer2BigDecimal(String str) {
DecimalFormat format = new DecimalFormat();
try {
Number number = format.parse(str);
DecimalFormat dfFormat = new DecimalFormat("#.##");
String strNumber= dfFormat.format(number);
BigDecimal resultNumber = new BigDecimal(strNumber);
return resultNumber;
} catch (ParseException e) {
return null;
}
}