2014-01-22 41 views
-1

我正在制作一个程序,我需要一种方法使变量超过100亿,int对于我而言只能存储高达999百万的数据,所以我决定使用long而不是int结果它只能存储高达999万美元。我如何存储大于100亿的数字

int TotalWorldPop = 7200000000; 

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

long TotalWorldPop = 7200000000; 

给我的 “文字是超出范围” 的错误,以及

int TotalWorldPop = 999999999 

对我来说是好的

+3

'int'不仅存储多达999万人。 “长”也不是。请显示你的代码。 –

+3

_“int只能存储999万”_什么?用BigInteger代替大数字。 –

+0

'long TotalWorldPop = 7200000000L;' – assylias

回答

3

A long可容纳的数字大至2 -1。但是把它们放入原始领域有一个窍门。

如果你输入原始文字,那么你必须在最后加上L,因为all numeric literals are treated as int(它只能增加到21亿)。

如果您需要的号码大于,请使用BigInteger

+0

好的,谢谢,我不知道我不得不把L放在很长的一段时间,我猜我付出了编程新手的代价。 – Shadowkillsa

0

您可以使用BigInteger来存储非常大的

例子:

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

这在问题中描述的情况下不是必需的... – assylias

相关问题