10. BigInteger和BigDecimal类

image
image

BigInteger 代码示例

package com.baidu.www;

import java.math.BigInteger;

// 大整数
public class BigInteger_ {
    public static void main(String[] args) {
        // 在编程中,需要处理很大的整数,long不够用时
        // 可以使用 BigInteger
        BigInteger bi = new BigInteger("2222222222222222222222222222222");
        BigInteger bi2 = new BigInteger("222222222");

        System.out.println(bi);

        System.out.println(bi.add(bi2));
        System.out.println(bi.subtract(bi2));
        System.out.println(bi.multiply(bi2));
        System.out.println(bi.divide(bi2));

    }
}

BigDecimal 代码示例

package com.baidu.www;

import java.math.BigDecimal;

public class BigDecimal_ {
    public static void main(String[] args) {
        // 在编程中,需要处理精度很高的数,double不够用时
        // 可以使用 BigDecimal
        BigDecimal bd = new BigDecimal("22.22222222222222222222222222222");
        BigDecimal bd2 = new BigDecimal("2.22222222");

        System.out.println(bd);

        System.out.println(bd.add(bd2));
        System.out.println(bd.subtract(bd2));
        System.out.println(bd.multiply(bd2));
        // 可能抛出异常:除不尽. ArithmeticException 无限循环小数
        // 指定精度,保留分子的精度
        System.out.println(bd.divide(bd2, BigDecimal.ROUND_CEILING));
    }
}
posted @ 2025-08-20 19:17  无敌美少女战士  阅读(1)  评论(0)    收藏  举报