当前位置:首页 > Java技术 > BigInteger和BigDecimal大数相加问题

BigInteger和BigDecimal大数相加问题

2022年11月06日 09:29:21Java技术8

package cn.hncu.big;

import java.math.BigDecimal;

public class BigDecimalDemo {

public static void main(String[] args) {
double s = 0.0;
for(int i=0;i<10;i++){
s = s+0.1;
}
System.out.println(s);

System.out.println("--------------");

BigDecimal ss = new BigDecimal(0);
for(int i=0;i<10;i++){
ss = ss.add( new BigDecimal(0.1) );
}

//23.34 ceiling=24 floor=23

//让ss除以1.0,保留2位有效数字,四舍五入
ss = ss.divide(new BigDecimal(1.0), 2, BigDecimal.ROUND_HALF_UP);
System.out.println( ss );
}

}

----------------------------------------------------

package cn.hncu.big;

import java.math.BigInteger;

public class BigIntegerDemo {

public static void main(String[] args) {
System.out.println( jc(700) );

BigInteger b1 = BigInteger.valueOf(12345567899L);
BigInteger b2 = jc(700);
BigInteger c = b1.add( b2 );
System.out.println(c);
}
public static BigInteger jc(int n){
BigInteger s =BigInteger.valueOf( 1 );
for(int i=1;i<=n;i++){
s = s.multiply( BigInteger.valueOf(i) );
}
return s;
}

public static int jc2( int n){
int s=1;
for(int i=1;i<=n;i++){
s = s*i;
}
return s;
}


public static int jc1( int n){
if(n==1){
return 1;
}
return n*jc1(n-1);
}



}

 

作者:折腾青春
来源链接:https://www.cnblogs.com/1314wamm/p/5677077.html

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。


本文链接:https://www.javaclub.cn/java/68131.html

标签: BigDecimal
分享给朋友:

“BigInteger和BigDecimal大数相加问题” 的相关文章

java BigDecimal(String val)确保小数点后有效位数 ✨ 每日积累

float输出,前7位有效数字是真实值,第8位是估算值,可能和原始一致,可能是四舍五入上来的。double值,前15位有效数字是真实值,第16位是估算值,可能和原始一致,可能是四舍五入上来的。当小数点后的有效位数超过float和doulbe的有效位置之后...

BigDecimal 百分比转换

public static void main(String[] args) { BigDecimal bigDecimalCount = BigDecimal.valueOf(1); BigDecimal bigDecimalTotal...

BigDecimal

import java.math.BigDecimal; import java.math.RoundingMode; public class BigDecimalTest { public static void main(String[] args) {...

BigDecimal用法详解

BigDecimal用法详解

一、简介Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。float和double只能用来做科学计算或者是工程计算,在商业计...

Java中BigDecimal解决精度丢失问题

Java中BigDecimal解决精度丢失问题

  1.我们先看一个例子 可以看到在Java中进行浮点数运算的时候,会出现丢失精度的问题。那么我们如果在进行商品价格计算的时候,就会出现问题。很有可能造成我们手中有0.06元,却无法购买一个0.05元和一个0.01元的商品。因为如上所示,他们两个的总...

java bigdecimal 除100,将BigDecimal乘以100哪种方法更好?

Here I have a question when using Java BigDecimal. Which way will be better when I want to multiply 100 for a object of BigDec...

ELK系列(4)

问题与分析 在使用Elasticsearch进行index数据时,发现报错如下: java.lang.IllegalArgumentException: cannot write xcontent for unknown value of type class java.m...

java BigDecimal List求和

BigDecimal totalPrice=list.stream().map(DictRegisterClassVsChargeVO::getPriceFirst).reduce(BigDecimal.ZERO, BigDecimal::add);...

BigDecimal

使用BigDecimal类来进行计算的时候,主要分为以下步骤:              1、用float或者double变量构建BigDecimal对象。     ...

java错误:java.lang.String can not be cast to java.math.BigDecimal

java错误:java.lang.String can not be cast to java.math.BigDecimal

报错java.lang.String can not be cast to java.math.BigDecimal 因为我直接使用了强制类型转化 String str = “875858”; BigDecimal big = (BigD...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。