Java实现大数运算的实例代码-创新互联

一、大数运算介绍

桥东ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!

大数运算,顾名思义,就是很大的数值的数进行一系列的运算。它是指由于编程语言提供的基本数值数据类型表示的数值范围有限,不能满足较大规模的高精度数值计算,因此需要利用其他方法实现高精度数值的计算,于是产生了大数运算。

二、Java实现大数运算方法


在BigDecimal用法详解这篇文章中给大家介绍了Java中的大数类BigDecimal的用法,那么在Java中我们实现大数运算时便可以使用这个类进行快速简便的实现。

实现代码如下:


import java.math.BigDecimal; 
class BigDecimalDemo  
{ 
  static final int location = 10; //小数点后位数 
  //加法 返回 num1+num2 
  public double add(double num1, double num2){ 
    BigDecimal b1 = new BigDecimal(num1); 
    BigDecimal b2 = new BigDecimal(num2); 
    return b1.add(b2).doubleValue(); 
  } 
  //减法 返回 num1-num2 
  public double sub(double num1, double num2){ 
    BigDecimal b1 = new BigDecimal(num1); 
    BigDecimal b2 = new BigDecimal(num2); 
    return b1.subtract(b2).doubleValue(); 
  } 
  //乘法 返回 num1*num2 
  public double mul(double num1, double num2){ 
    BigDecimal b1 = new BigDecimal(num1); 
    BigDecimal b2 = new BigDecimal(num2); 
    return b1.multiply(b2).doubleValue(); 
  } 
  //除法 返回 num1/num2 
  public double div(double num1, double num2){ 
    return div(num1,num2,location); 
  } 
  //除法 返回num1/num2 自定义小数点后位数 
  public double div(double num1, double num2, int _location){ 
    BigDecimal b1 = new BigDecimal(num1); 
    BigDecimal b2 = new BigDecimal(num2); 
    return b1.divide(b2,_location,BigDecimal.ROUND_HALF_UP).doubleValue(); 
  } 
 
 
  public static void main(String[] args)  
  { 
    BigDecimalDemo bd = new BigDecimalDemo(); 
    System.out.println(bd.add(12.123123,2)); //14.123123 
    System.out.println(bd.sub(12.123,5.1)); //7.023 
    System.out.println(bd.mul(9.99999,8.8888)); //88.887911112 
    System.out.println(bd.div(13,3)); //4.3333333333 小数点后10位 
    System.out.println(bd.div(13,3,20)); //4.333333333333333 小数点后15位 
 
    double b = 4.123123123123123123123123123; //4.123123123123123  double小数点后15位 
    System.out.println(b); 
 
    BigDecimal b2 = new BigDecimal(4.123123123123123123123123123); //4.12312312312312290174531881348229944705963134765625 
    System.out.println(b2); 
  } 
} 

分享题目:Java实现大数运算的实例代码-创新互联
文章网址:https://www.cdcxhl.com/article36/dohhsg.html

成都网站建设公司_创新互联,为您提供微信小程序软件开发搜索引擎优化全网营销推广网页设计公司服务器托管

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都定制网站网页设计