展开全部
运行时所有数据都存储在内存中,32313133353236313431303231363533e4b893e5b19e31333436316236所以相同很正常,float转int会将小数后面的数舍去。
比如定义了一个floata,强制转换成int可写成(int)a。如果是一个表达式,那么只需要将a替换成一个表达式即可。
规格化值:当指数域的8个二进制zhi数字既非全零又非全1时,float数值就是这种情况。
设指数域的八位二进制所表示的十进制数为e, 则公式1中的E就是 E = e - (2^7 - 1)而且此时,将小数域所表示的二进制假设为(f22)(f21)...(f1)(f0) (注2) ,则该小数域所表示的值即为f = 0.(f22)(f21)...(f1)(f0).于是M = 1 + f
扩展资料:
float a=10; // 定义 a为 float 型。
int b=(int)a;// 定义b 为 int 型。然后把 float型的 a 强制转换成 int型。再把a的值 赋值给 b ;
强制转换是指java中的向下转型,因为向下转型的时候会丢失精度。向上转型不需要强制,如:
int a= 10;//定义a为int型。
float b = a; //定义b为float型。然后把a的值赋给b。这种就是向上转型