您的位置:首页 > 编程语言 > Java开发

java26:大小数,大整数

2016-01-19 10:18 597 查看
BigDecimal类 大小数
对小数做精确计算时,double不能描述的时候,就要使用这个类BigDecimal对小数做精确计算
package day26;

import java.math.BigDecimal;

public class Demo01 {
public static void main(String[] args){
BigDecimal d1 = new BigDecimal("0.9999999999999999999999999999999999999999999999999999999999999999999999");
BigDecimal d2 = new BigDecimal("0.0000000000000000000000000000000000000000000000000000000000000000000001");
d1 = new BigDecimal("0.9999999999999999999999999999999999999999999999999999999999999999999999");
d2 = new BigDecimal("0.0000000000000000000000000000000000000000000000000000000000000000000001");
BigDecimal d3 = d1.add(d2);//+
System.out.println(d3);

d1 = new BigDecimal("0.9999999999999999999999999999999999999999999999999999999999999999999999");
d2 = new BigDecimal("0.0000000000000000000000000000000000000000000000000000000000000000000001");
d3 = d1.subtract(d2);//-
System.out.println(d3);

d1 = new BigDecimal("0.9999999999999999999999999999999999999999999999999999999999999999999999");
d2 = new BigDecimal("0.0000000000000000000000000000000000000000000000000000000000000000000001");
d3 = d1.multiply(d2);//*
System.out.println(d3);

d1 = new BigDecimal("0.9999999999999999999999999999999999999999999999999999999999999999999999");
d2 = new BigDecimal("0.0000000000000000000000000000000000000000000000000000000000000000000001");
d3 = d1.divide(d2);//÷
System.out.println(d3);
d1 = new BigDecimal("10");
d2 = new BigDecimal("3");
//			10÷3	保留8位 	四舍五入
d3 = d1.divide(d2,8,BigDecimal.ROUND_HALF_UP);//÷
System.out.println(d3);

}
}


BigInteger
保存更长的整数,取值范围受内存限制,在long 不能满足的时候使用BigInteger
package day26;

import java.math.BigInteger;

public class Demo02 {
public static void main(String[] args){
int sum = 1;
for(int i = 1;i<=200;i++){
sum *=i;
}
System.out.println(sum);

//BigInteger bSum = new BigInteger(1);
BigInteger bSum = BigInteger.valueOf(1);
for(int i = 1; i<=999;i++){
bSum =bSum.multiply(BigInteger.valueOf(i));
}
System.out.println(bSum);

}
}


本文出自 “浪漫的偷笑” 博客,转载请与作者联系!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: