int型能强制换为double吗 double型怎么转换成int型?

double型怎么转换成int型?Cast int i double DBI=(int)分贝。此方法将丢失小数点后的值。这种方法的优点是不会丢失小数点后的值。但是,当double值太大时,即当它大于i

double型怎么转换成int型?

Cast int i double DBI=(int)分贝。此方法将丢失小数点后的值。这种方法的优点是不会丢失小数点后的值。但是,当double值太大时,即当它大于int类型的值范围时,它将更改原始值。最好的方法是将double类型转换为string类型,并从string转换为int类型public int stringToInt(string string){int j=0 string str=字符串.子字符串(0, 字符串.indexOf(".")) 字符串.子字符串( 字符串.indexOf(“”)1)int intgeo=整数.parseInt(STR)返回geo}

这都是你发现的。首先,像float double这样的数据存在近似值的精度问题。你知道吗,也就是说,印刷的8.0000不一定是8.00000。在您的示例中,我将其更改为打印20位小数。可以发现8.00000实际上是7.99999999872812850,因此将其转换为int 7。一般来说,要将浮点转换为int,最接近的值是(int)(a0.5)以实现舍入效果