0

我如何在 java 中创建自己的数据类型来存储一个 16 字节的整数值

java中最长的数据类型是“long”,它是8字节,它可以存储19位整数值,但是,我想找到25的阶乘,25的阶乘是26位(15511210043330985984000000)。现在的问题是我在 java 中没有这样的数据类型可以存储如此巨大的 26 位或更多位的值。

如果有的话

public long factorial(int number)
{
    int i=1;
    long factorial=1;

    for(i=1;i<=number;i++)
    {
        factorial = factorial * i; 
    }
    return factorial;
}
4

2 回答 2

5

现在的问题是我在 java 中没有这样的数据类型可以存储如此巨大的 26 位或更多位的值。

你看过java.math.BigInteger吗?请注意,这是一个类(引用类型)而不是值类型,但它是不可变的,这意味着您可以认为它有点像值。

于 2012-04-11T13:08:39.197 回答
4

现在的问题是我在java中没有这样的数据类型可以存储如此巨大的价值

这并不完全正确。有BigInteger

有关使用BigInteger. _

于 2012-04-11T13:08:50.277 回答