黑马程序员技术交流社区
标题:
long与float的取值范围谁大谁小
[打印本页]
作者:
纸灯墨冷
时间:
2016-11-10 23:37
标题:
long与float的取值范围谁大谁小
* 进行混合运算的时候,byte,short,char不会相互转换,都会自动类型提升为int类型,其他类型进行混合运算的是小的数据类型提升为大的
* byte,short,char -- int -- long -- float -- double
* long: 8个字节
* float:4个字节
* IEEE754
* 4个字节是32个二进制位
* 1位是符号位
* 8位是指数位
* 00000000 11111111
* 0到255
* 1到254
* -126到127
* 23位是尾数位
* 每个指数位减去127
* A:它们底层的存储结构不同。
* B:float表示的数据范围比long的范围要大
* long:2^63-1
* float:3.4*10^38 > 2*10^38 > 2*8^38 = 2*2^3^38 = 2*2^114 > 2^63-1
作者:
lokywang
时间:
2016-11-11 00:49
不错,一直困惑着。
作者:
L10052108
时间:
2016-11-11 01:09
float和long存储的数,表达含义不一样,float表示范围大,但是很容易丢失精度
作者:
cyongcar
时间:
2016-11-11 12:24
肯定是float呀,他们的存储结构不同
作者:
Jarc
时间:
2016-11-11 12:27
底层存储格式不同
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2