如何在java中为变量分配非常大的数字?

如何在java中为变量分配非常大的数字?,java,Java,我在下面的代码行中得到“整数太大:10000000001”。我如何使maxValue能够容纳1万亿或1万亿 long maxValue = 1000000000001; //1,000,000,000,001 您需要使用一个长文本(末尾有一个L): 请注意,如果您的数字介于-263和263-1(包括-263-1)之间,则不需要使用BigInteger。(263-1=9223372036854775807L=0x7FFFFFFFFFFFFFL。)在提问之前,您可以查看其他问题和答案。有

我在下面的代码行中得到“整数太大:10000000001”。我如何使maxValue能够容纳1万亿或1万亿

long maxValue = 1000000000001;      //1,000,000,000,001

您需要使用一个长文本(末尾有一个
L
):


请注意,如果您的数字介于-263和263-1(包括-263-1)之间,则不需要使用BigInteger。(263-1=9223372036854775807L=0x7FFFFFFFFFFFFFL。)

在提问之前,您可以查看其他问题和答案。有人可能有同样的问题,并得到了最好的答案。见此:

这可能就是您所需要的。

这就完成了

如果整型文字的后缀为ASCII,则其类型为long 字母L或L(ell);否则为int型(§4.2.1)


实际上,
2^63
=922372036854775808(10)=80000000000000(16)。最大值为
2^63-1
(因为2的补码二进制表示)。您链接的问题作为使用BigInteger的解决方案。在这种情况下不需要这样做。
long maxValue = 1000000000001L; //1,000,000,000,001