【发布时间】:2010-10-03 13:01:48
【问题描述】:
返回小数的整数部分的最佳方法是什么(在 c# 中)? (这必须适用于可能不适合 int 的非常大的数字)。
GetIntPart(343564564.4342) >> 343564564
GetIntPart(-323489.32) >> -323489
GetIntPart(324) >> 324
这样做的目的是:我在数据库中插入一个十进制 (30,4) 字段,并希望确保我不会尝试插入一个对于该字段来说太长的数字。确定小数部分的整数部分的长度是此操作的一部分。
【问题讨论】:
-
获取不到 int 部分;你可以得到整数部分并放弃小数部分。 Decimal 的整数部分很容易溢出 int 并抛出或环绕,默默地杀死你的代码。
-
嗯,这就是为什么这个问题不像看起来那么简单。我需要它像处理小数字一样可靠地处理非常大的数字。但是,“整数”比“int”更准确——我将在上面重新表述。