关于C#中Math.Round的简单问题

时间:2011-06-09 18:39:49

标签: c#

假设我有一个int表示集合中的行数,我想确定保存集合所需的页数给出一定的页面大小。

因此,如果我的页面大小为20,集合大小为89,那么我需要5页。

Math.Round函数如何工作以获得我需要的东西?我需要舍入到下一个整数,而不是最近的整数。

感谢您的建议。

4 个答案:

答案 0 :(得分:11)

您根本不想使用Math.Round()。您应该使用Math.Ceiling(),它将返回大于传入的double的最小整数值:

var pageSize = 20D;
var pages = Math.Ceiling(collection.Count() / pageSize);

答案 1 :(得分:4)

Math.Ceiling()正是你所寻找的我相信的。

答案 2 :(得分:3)

使用上限:Math.Ceiling

答案 3 :(得分:3)

你可以在双打中进行工作并使用Math.Ceiling,正如其他人所说的那样。但为什么?你可以完全用整数运算来完成这项工作。

但是,如果您在这里看到所有答案的所有热闹评论,有时您需要尝试五到六次才能获得正确的代码。

How can I ensure that a division of integers is always rounded up?