浮点型float数据强制转换成int整型

 

问题:如下代码 想获取某两个Decimal类型数之间的商的大小,结果偶尔出错(请注意是 偶尔)             

Decima t1;

Decima t2;

int shang =Convert.ToInt32(t1 / t2) ;

 

解决方法:将Decimal类型数据强制转换成INT整型时  会有四舍五入的过程。如下,需要用Math.Truncate方法来取整数位。所以区商时必须用此方法取整

问题代码:

Decima t1=1.2m;

Convert.ToInt32(t1) // 得到1

Decima t2=1.7m;

Convert.ToInt32(t2)//  得到2

 

改成以下代码后:

 

Decima t1=1.2m;

Convert.ToInt32(Math.Truncate(t1))  //得到1

Decima t2=1.7m;

Convert.ToInt32(Math.Truncate(t2))  //得到1

 

posted on 2016-06-15 19:41  木色小罗  阅读(9486)  评论(3编辑  收藏  举报

导航

诗与远方