2012-02-10 193 views
4

可能重复:
working with incredibly large numbers in .NET有没有什么方法来表示很长的数字?

我工作的一个简单的项目,必须使用基本的算术功能,如+, - ,*,/。 使用的数字太大而无法存储在64位整数中。

我想知道是否有任何方法来存储这些数字,所以我可以使用它们来执行算术函数。

谢谢!

+1

我们说话有多大? – jrummell 2012-02-10 20:51:09

+1

@ jrummell:BigInteger不限。 – 2012-02-10 20:54:27

+0

@AndreiRinea在某些时候,你会得到一个内存不足的例外... – phoog 2012-02-10 21:04:18

回答

11

BigInteger(.NET 4.0+)结构救援!

表示任意大的有符号整数。

如果您使用的是4.0之前的版本,请查看BigNumbers库。

+0

嗨谢谢你的回答,但我该如何改变该对象的价值?假设我有一个30位数的数字,并且我想按照您的建议将其表示为BigInteger,那么应如何将该值放入对象中? – 2012-02-10 21:10:01

+2

@AmirSidis - 您是否阅读过链接中的文档和示例?这是一个不可变的_structure_,就像'Int32'一样 - 你不能改变实例的值。你可以像对其他整型类型那样对它进行算术运算。 – Oded 2012-02-10 21:11:59

+1

@AmirSidis - 查看['Parse'](http://msdn.microsoft.com/zh-cn/library/dd268271.aspx)方法。 – Oded 2012-02-10 21:12:56

8

您可以使用它在.NET推出4

代表一个任意大符号整数BigInteger类型。


可以使用BigInteger实例,就像使用其他任何整型。 BigInteger重载标准数字运算符,使您能够执行基本的数学运算,例如加法,减法,除法,乘法,减法,否定和一元否定。

相关问题