提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
按数学的思维来理解,相同位数的小数会比整数大吗?回答肯定是不一定,但在计算机当中,四个字节的浮点数却比八个字节的整型long存储范围要大,这该如何解释。
一、java数据类型
二、浮点型数据类型的存储方式
float由符号位、指数位、和尾数部分组成。float最左边一位表示符号位,中间8位绿色部分表示指数位,剩下23位表示尾数。由于指数位部分有符号,指数部分的10000000和整型不同,它表示的值是128,所以指数位的取值范围是-127到128,因此我们可以得出float的取值范围大约是-2^128到2^128,这个近似值也可以表示为为-3.4E到3.4E。据此可以得出图中的符号位为0是正数,指数部分为正值124。最后我们可以得出四个字节的float的取值范围是比八个字节的long的取值范围大的。以下是图片说明:
八个字节的整数范围: -2^63--2^63-1
四个字节的浮点数范围:-2^127--2^127
总结
以上就是图文说明,为什么为什么四个字节的float表示的范围比八个字节的long表示的范围要广。