arg1.compareTo(arg2)
arg1 > arg2 返回 int 1
arg1 = arg2 返回 int 0
arg1 < arg2 返回 int -1ide
public class BigDecimalUtli { private static final BigDecimal zero = new BigDecimal("0"); /** arg1 + arg2 * @param arg1 * @param arg2 * @return */ public static BigDecimal add(BigDecimal arg1,BigDecimal arg2){ return arg1.add(arg2); } /** arg1 - arg2 * @param arg1 * @param arg2 * @return */ public static BigDecimal subtract(BigDecimal arg1,BigDecimal arg2){ return arg1.subtract(arg2); } /** arg1 * arg2 * @param arg1 * @param arg2 * @return */ public static BigDecimal multiply(BigDecimal arg1,BigDecimal arg2){ return arg1.multiply(arg2); } /** arg1 / arg2 * 默認保留兩位小數,四捨五入 * @param arg1 * @param arg2 * @return */ public static BigDecimal divide(BigDecimal arg1,BigDecimal arg2){ if(arg2.compareTo(zero) == 0){ return new BigDecimal("0.00"); } return arg1.divide(arg2,2,BigDecimal.ROUND_HALF_UP); } /** 格式化小數,保留兩位小數,舍入根據模式判斷 * @param arg1 * @return */ public static BigDecimal setScale(BigDecimal arg1){ return arg1.setScale(2,BigDecimal.ROUND_HALF_UP); //四捨五入 // return arg1.setScale(2,BigDecimal.ROUND_HALF_DOWN); //五舍六入 // return arg1.setScale(2,BigDecimal.ROUND_DOWN); //直接刪除多餘的小數位 // return arg1.setScale(2,BigDecimal.ROUND_UP); //直接進位 } }