我在StackOverFlow中发现了这个问题,但是并没有解决我的问题。如何将双精度型格式化为字符串,并仅在必要时显示十进制数字?
Weight
0.500
18.000
430.000
通过上面URL中的解决方案,我的结果以这种形式显示:
Weight
0.5
18
430
我的问题是十进制数字,我想以三位数显示十进制数字,如下所示:
Weight
0.500
18
430
我认为您无法使用单string.Format()做任何事情。因此,您可以使用一个子句:
if(weight % 1.0 > 0){
string.Format("{0:0.000}", weight)
}
else {
string.Format("{0:0}", weight)
}
甚至更好:
string.Format(weight % 1.0 > 0 ? "{0:0.000}" : "{0:0}", weight)
编辑:对不起错过了一点=))
编辑:如果需要下限结果,则可以使用:
string.Format(weight % 1.0 >= 0.001 ? "{0:0.000}" : "{0:0}", weight)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句