C#:存储百分比,50还是0.50?

当在变量中保持百分比值时,将它们保持为整数与分数之间存在偏好。 那应该是变量是否保持0到100之间或0.00到1.00之间的数字? 在任何一种情况下,保存值的变量都是十进制类型。

我正在与之交互的数据库恰好将它们存储为0到100的整数。

注意:我使用“整数”这个词来表示0到100范围内的值,尽管这些值可能包含小数分量(例如,25.75)。 我不知道如何描述两个百分比值范围之间的差异

我倾向于将它们存储为0到1,然后在计算中使用数字时不需要转换。

使用0到100之间的数字更多是查看数字的显示/可读性方式。 当您显示百分比时,您可以使用String.Format("{0:P},percentage) ,该数字将在0到1之间,但将显示为0到100。

如果使用浮点字段(float,decimal,double),则50.0和0.50将具有相同的精度。 所以,从这一点来说,我会根据类似表格中的类似字段做出决定,以给出设计统一感。

如果您使用分数进行大量数学运算,则需要将分子和分母分别存储为整数。 当使用分数表示重复或非重复小数时,您可以获得舍入错误,从而增加您拥有的更多操作。

如果您只是存储和显示数字,那么这无关紧要。

如果有的话,你打算用这个数字做什么数学计算?

您可以使用双精度来表示百分比和0-1。 但是如果你选择将百分比存储为“整数”,我建议不要使用整数,例如,如果你想要代表12.3%,这将限制你。

我认为这是微不足道的 ……两者都是一样的

我的意思是在计算/显示信息方面……

 00.50 is cool for calculations 50.00 is cool for displaying