#研究JAVAAPI系列--Number类+BigDecimal类#

Number类,抽象类,作用是规定了其子类必须提供数值转换为byte ,float ,short , int ,long ,double五种类型的方法。

BigDecimal类,一个用于处理超过16位有效数字的类,在商业上比较常用,不同于传统的+-*/,bigdecimal专有方法如下:

package MathAPI;

import java.math.BigDecimal;
import java.math.MathContext;

public class BigDecimalAPI {
    
    //测试:绝对值和转换int
    public void test1(){
        int a = -1;
        System.out.println("原本的A:"+a);
        int b = new BigDecimal(a).abs().intValue();
        System.out.println("绝对值的A:"+b);
    }
    //测试:add方法
    public void test2(){
        int val1 = 100;
        BigDecimal bd1 = new BigDecimal(val1);
        System.out.println("val1的值:"+val1);
        int val2 = 50;
        BigDecimal bd2 = new BigDecimal(val2);
        System.out.println("val2的值:"+val2);

        BigDecimal sum = bd1.add(bd2);
        System.out.println("add后的和为:"+sum);
    }
    //测试:舍入模式+负值+幂值+余值+精度数
    public void test3(){
        BigDecimal bd = new BigDecimal(3.1,MathContext.DECIMAL32);
        System.out.println("原来的值:"+bd);
        System.out.println("-----------------");
        System.out.println("负数的值:"+bd.negate());
        System.out.println("2次幂值:"+bd.pow(2));
        System.out.println("返回余数的值"+bd.remainder(new BigDecimal(2)));
        System.out.println("移动小数点:"+bd.movePointRight(3));
        System.out.println("保留小数点后3位:"+bd.setScale(3));
        System.out.println("返回当前值得符号:"+bd.signum());
        System.out.println("移除尾部所有零:"+bd.stripTrailingZeros());
        System.out.println("返回值的精度:"+bd.precision());
        
    }
    //去指数的方法就省略了感觉很少用,要用再查,toPlainString() 
    
    public static void main(String[] args) {
        BigDecimalAPI bda = new BigDecimalAPI();
        System.out.println("******测试1:*******");
        bda.test1();
        System.out.println("******测试2:*******");
        bda.test2();
        System.out.println("******测试3:*******");
        bda.test3();
    }
}

测试结果:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值