zsh*_*arp 0 c# floating-point integer
哪种方式更适合删除浮动小数位,还是有更有效的方法?
舍入并不重要,我有兴趣显示这个数字
Float number;
1- int wholeNumber= Convert.ToInt(number);
string display=wholeNumber.ToString();
2- string [] splitNumber= number.ToString().Split('.');
string display=splitNumber[0];
Run Code Online (Sandbox Code Playgroud)
由于您只是删除小数,请执行:
int wholeNumber = (int)number;
Run Code Online (Sandbox Code Playgroud)
这将有效地减少小数.请注意,它不会对数字进行舍入,但这不是您请求的行为.
以下是两个效率更高的选项:
只需输入数字而不是调用Convert.ToInt32
:
((int)number).ToString()
Run Code Online (Sandbox Code Playgroud)
使用小数为零的格式说明符格式化数字:
number.ToString("N0")
Run Code Online (Sandbox Code Playgroud)
第一个应该稍快一些,因为格式化整数比浮点数更容易.
如果你想要一些真正有效的东西,你可以将数字转换为整数,然后使用经过优化的代码将其格式化为字符串,只做你需要的代码而已.