我如何存储超过100亿的数字

时间:2014-01-22 23:03:31

标签: java variables int long-integer

我正在制作一个程序,我需要一种方法来使变量超过100亿而int只为我存储高达9.99亿,所以我决定使用long而不是int而且结果它只存储到也是9.99亿。

int TotalWorldPop = 7200000000; 

给我“文字超出范围”错误

long TotalWorldPop = 7200000000;  

还给我“文字超出范围”错误

但是

int TotalWorldPop = 999999999

对我来说没问题

2 个答案:

答案 0 :(得分:4)

long可以容纳2 63 -1的数字。但是将它们放入原始领域是一种技巧。

如果您要输入原始文字,那么您必须在最后添加Lall numeric literals are treated as int(并且最多只能达到〜21亿)。

如果您需要大于的数字,请使用BigInteger

答案 1 :(得分:0)

您可以使用BigInteger存储非常大号。

示例:

Biginteger bigInt1 = new Biginteger("91826581752671985235272769716");
Biginteger bigInt2 = new Biginteger("-1796357891266373473772242");
Biginteger bigint3 = bigInt1.divide(bigInt2);
Biginteger bigint4 = bigInt1.add(bigInt2);