什么是在java中存储大数字的基本数据类型?

时间:2014-04-21 18:01:12

标签: java

我希望存储一个非常大的范围15477096172227810860近似值。这个数字存储在一个字符串中,当我将它转换为Long时,它给我NumberFormatException。我认为长期不具有那么长的价值。请给我一些解决方案。

谢谢

3 个答案:

答案 0 :(得分:4)

Java BigIntegerBigDecimal可用于大数字。从String中声明它也很容易。

BigInteger num = new BigInteger("15477096172227810860");

请注意,它不是“基本数据类型”(原始),因此您必须调用方法来获取值或“修改”它。 (这是不可改变的)。正如其他答案所述,数字的长度受可用内存的限制。

答案 1 :(得分:2)

BigInteger可以存储任意大的数字(通常可用的内存设置限制)。

答案 2 :(得分:0)

最佳部分(仅限?)是使用BigInteger

但是,这取决于你想用这个数字做什么