java 存放大数字_我可以使用什么变量类型在java中保存大量数字(30位数)?

你可以使用

BigInteger类.

BigInteger bi1 = new BigInteger("637824629384623845238423545642384");

BigInteger bi2 = new BigInteger("3039768898793547264523745379249934");

BigInteger bigSum = bi1.add(bi2);

BigInteger bigProduct = bi1.multiply(bi2);

System.out.println("Sum : " + bigSum);

System.out.println("Product : " + bigProduct);

输出:

Sum : 3677593528178171109762168924892318

Product : 1938839471287900434078965247064711159607977007048190357000119602656

我应该提到BigDecimal,这是很好的数量计算比较双.

BigDecimal bd = new BigDecimal("123234545.4767");

BigDecimal displayVal = bd.setScale(2, RoundingMode.HALF_EVEN);

NumberFormat usdFormat = NumberFormat.getCurrencyInstance(Locale.US);

System.out.println(usdFormat.format(displayVal.doubleValue()));

输出:

$123,234,545.48

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值