java BigDecimal加法/减法/乘法/除法 保留两位小数

来源:互联网 发布:如何申请淘宝全球购 编辑:程序博客网 时间:2024/05/01 11:12

1.BigDecimal类概述及其构造方法

  由于在运算的时候,float类型和double类型很容易丢失进度,所以,为了能够精确的表示、计算浮点数,java提供了BigDecimal类
  BigDecimal类是不可变得、任意精度的有符号是进制数

2.构造方法及成员方法

/** * BigDecimal类 * 由于在运算的时候,float类型和double类型很容易丢失精度。所以,为了能精确的表示、计算浮点数。 * java提供了BigDecimal类 * BigDecimal类是不可变的、任意精度的有符号十进制数。 * 构造方法 *    public BigDecimal(String val) * 成员方法 *    public BigDecimal add(BigDecimal value) *    public BigDecimal subtract(BigDecimal value) *    public BigDecimal multiply(BigDecimal value) *    public BigDecimal divide(BigDecimal value) *    public BigDecimal divide(BigDecimal value,int scale,int roundingMode) */public class BidDecimalDemo {    public static void main(String[] args) {        BigDecimal b1 = new BigDecimal("0.09");        BigDecimal b2 = new BigDecimal("0.01");                 //public BigDecimal add(BigDecimal value)        System.out.println(b1.add(b2));//0.10                 //public BigDecimal subtract(BigDecimal value)        System.out.println(b1.subtract(b2));//0.08                 //public BigDecimal multiply(BigDecimal value)        System.out.println(b1.multiply(b2));//0.0009                 //public BigDecimal divide(BigDecimal value)        System.out.println(b1.divide(b2));//9                 //public BigDecimal divide(BigDecimal value,int scale,int roundingMode)        System.out.println(b1.divide(b2, 2,BigDecimal.ROUND_HALF_UP));//9.00    }

}

全文:http://www.androidstar.cn/java-bigdecimal加法减法乘法除法-保留两位小数/

0 0
原创粉丝点击