请问(int)3.5和Convert.ToInt32(3.5)为什么不一样? Console.WriteLine((int)(3.5)); //3Console.WriteLine((Convert.ToInt16(3.5)));//4 Console.WriteLine((Convert.ToInt32(3.5)));//4谢谢~! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Console.WriteLine((int)(3.5)); //3是强制类型转换。Console.WriteLine((Convert.ToInt16(3.5)));//4是四舍六入五取双的舍入算法。 区别在于:(int)强制类型转换是取整数部分,Convert类的方法Convert.ToInt32(double),是要四舍五入的对此,可参考:http://msdn.microsoft.com/zh-cn/library/ffdk7eyz.aspx所以,一般情况下对小数的取整,我都是用类型转换的。 C# 正则表达式 求解 如何查看TCP数据报头里面的数据 C#中使用SendMessage遇到麻烦 如何在Dataset中取得多个表的一列或多列的数据显示在DataGridView中 有关系列化---收集帖(答者有分) 将水晶报表中的某一单元格内容回传给C#程序 高分求助!!在线等待 WPF中book控件如何使用?求各路大神指点,或者给点这方面的资料也行 。。。。 我在工程里追加---->新项目----> 里面没有Form的选项,怎么回事? 如何把反编译的源代码再编译成dll文件呢 C# excel表格导入问题 asp.net mvc 分页问题
是强制类型转换。
Console.WriteLine((Convert.ToInt16(3.5)));//4
是四舍六入五取双的舍入算法。
对此,可参考:http://msdn.microsoft.com/zh-cn/library/ffdk7eyz.aspx所以,一般情况下对小数的取整,我都是用类型转换的。