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

Posted 木色小罗

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浮点型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

 

以上是关于浮点型float数据强制转换成int整型的主要内容,如果未能解决你的问题,请参考以下文章

C语言的浮点型怎么转换为整型?

JAVA中一个float除以一个int变量,得到的结果精确到几位?

python数据类型强制转换和运算符

Php中的强制转换详解

Java中怎么将Long类型转换成Integer或int类型?

百度的科学计算器(简单)