数字处理工具类

数字处理工具类:
BigInteger:
类可以让超过Integer范围内的数据进行运算。
构造方法:public BigInteger(String var)
常用方法:
public BigInter add(BigInteger var)      //加法
public BigInter subtract(BigInteger var) //减法
public BigInter multiply(BigInteger var) //乘法
public BigInter divide(BigInteger var)   //除法(整除)
public BigInter add(BigInteger var)      //取模(%余数)
public BigInteger[] divideAndRemainder(BigInteger val)  //返回数组,同时计算除法和取模

BigDecimal:
可以精确的表示和计算浮点数而不丢失精度
构造方法:public BigDecimal(String var)
常用方法:
public BigDecimal add(BigDecimal var)        //加法
public BigDecimal subtract(BigDecimal var)   //减法
public BigDecimal multiply(BigDecimal var)   //乘法
public BigDecimal divide(BigDecimal var)     //除法(整除)
public BigDecimal add(BigDecimal var)        //取模(%余数)

import java.math.BigDecimal;
import java.math.BigInteger;
import java.text.DecimalFormat;
import java.util.Arrays;

public class Test {
    public static void main(String[] args) {
        //BigInteger类
        String var1 = "425356347458687";
        String var2 = "234356346745768";
        BigInteger b1 = new BigInteger(var1);
        BigInteger b2 = new BigInteger(var2);
        System.out.println(b1.add(b2));
        System.out.println(b1.subtract(b2));
        System.out.println(b1.multiply(b2));
        System.out.println(b1.divide(b2));
        //divideAndRemainder(),返回数组,同时计算除法和取模
        System.out.println(Arrays.toString(b1.divideAndRemainder(b2)));
        
        //BigDecimal类
        String var3 = "788.23423432563626";
        String var4 = "44.432342532634564";
        BigDecimal b3 = new BigDecimal(var3);
        BigDecimal b4 = new BigDecimal(var4);
        System.out.println(b3.add(b4));
        System.out.println(b3.subtract(b4));
        System.out.println(b3.multiply(b4));
        
        //当除不尽时会报异常:ArithmeticException;可以才采用方法scale()返回标度
        System.out.println(b3.divide(b4));
        //System.out.println(b3.scale()-b4.scale());
        
        
        //DecimalFormat类,对大数据格式化
        double pi = 3.1415926; //圆周率
        //取一位整数,结果:3
        System.out.println(new DecimalFormat("0").format(pi));
        
        //取一位整数和两位小数,结果:3.14
        System.out.println(new DecimalFormat("0.00").format(pi));
        
        //取两位整数和三位小数,整数不足部分用0补齐,结果:03.145
        System.out.println(new DecimalFormat("00.000").format(pi));
        
        //取所有整数部分,结果:3
        System.out.println(new DecimalFormat("#").format(pi));
        
        //以百分比方式计数,并取两位小数,结果:314.16%
        System.out.println(new DecimalFormat("#.##%").format(pi));
        
        long num = 623461314;
        //以逗号每隔三位分隔,结果:623,461,314
        System.out.println(new DecimalFormat("###,###").format(num));
        
    }

}


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 该工具类包含了如下功能: 生成四位随机整数 生成五位随机整数 生成六位随机整数 生成八位随机整数 加法、减法、乘法...
    笑疯子阅读 4,125评论 0 0
  • 一、整数大数据 BigInteger类(加减乘除) 二、小数大数据 BigDecimal类(加减乘除) 三、取小数...
    Nic_ofh阅读 3,619评论 0 0
  • 说出你的真相,当你和别人介绍你自己的时候,如今的社会都需要吹牛,当对方是高手时,他不会捅破你这层窗户纸,给你留着,...
    李基锋阅读 1,670评论 0 1
  • 有着不少好看的外国电影因为一些原因并没有在中国引进,然而这些电影却都是非常精彩、有看点的电影。这些电影都不应该错过...
    甜椒文化阅读 3,541评论 0 0
  • 1 我的大学生活之大学英语学习 1) 在这个学期的大学英语学习中,我的GPS [Gains]朋友,能力 [Prob...
    旅213李佳昕阅读 1,760评论 0 0

友情链接更多精彩内容