一.BigInteger的用法
有时候long
的长度不够
就要用BigInteger
来进行大数值的运算
要引入头文件java.math.BigInteger
例如求阶乘
import java.math.BigInteger; // 引入大数值头文件
public class JieCheng
{
public static void jc() // 定义阶乘的函数
{
BigInteger sum = BigInteger.valueOf(0); // 对总数进行定义
// 开始阶乘
for(int i = 1;i <= 100;i++ )
{
BigInteger num = BigInteger.valueOf(1);
// 每一个小项的阶乘
for(int j = 1;j <= i;j++)
{
num = num.multiply(BigInteger.valueOf(j));
}
// 求和
sum = sum.add(num);
}
// 输出
System.out.println(sum);
}
public static void main(String args[])
{
jc();
}
}
由于直接使用BigInteger num = new BigInteger("字符串“)
参数是字符串 不是数字
所以使用BigInteger sum = BigInteger.valueOf(0);
将sum
直接初始化为数字0
这个数据类型进行的不是 + - * /
而是要调用自身的函数来进行计算
加BigInteger add()
减BigInteger subtract()
乘BigInteger multiply()
除BigInteger divide(BigInteger val)
这里面的b也得是BigInteger'
类型
二.BigDecimal
这个的用法和上面的一样
只不过是小数
import java.math.BigDecimal;
public class text
{
public static void main(String args[])
{
BigDecimal num = BigDecimal.valueOf(1.22);
num = num.add(BigDecimal.valueOf(2));
System.out.println(num);
}
}
三.转换
BigDecimal b=new BigDecimal(45.45);
int a = b.intValue();