为什么.NET中的ceiling返回Double而不是整数?

And*_*sen 24 .net c# math

正如解释在这里,Math.Ceiling返回:"最小的积分值大于或等于".但后来它说:"请注意,此方法返回Double类型而不是整数类型." 我只是想知道为什么?

Jef*_*tes 31

因为double的最大值比整数支持的大得多.

如果返回一个整数,那么double在值大于Int32.MaxValue(或甚至Int64.MaxValue)的情况下要求上限是不可能的.

  • @blgnklc:10 ^ -1是0.1,而不是0.01...但无论如何,这与Math.Ceiling有什么关系? (4认同)