A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

float为什么比long要大?两个类型是如何定义的?

14 个回复

倒序浏览
没有为什么,就像为什么人类要比蚂蚁大 你说为什么
回复 使用道具 举报
float是四个字节,long是八个字节,因为它们的存储类型不一样,float表示的数据范围比long的范围要大
回复 使用道具 举报
计算机表达数据的方式不一样导致的
Long类型是以2进制来表示,所以最大值是2的64次方 -1
Float类型是以科学计数法表示的,好像10的幂次用23位来表示(记不清是多少位了)
也就是float能表达数的数量级是  10的(2的23次方)的次方,所以比Long要大

具体百度一下float和double数据类型的精度  就知道了
回复 使用道具 举报
请看这个帖子。
http://blog.csdn.net/libaoqiang613/article/details/7896621

有一句话说的好:归根结底,long存放的是数值,而float存放的则是一种逻辑规则。
回复 使用道具 举报
存储的方式不一样所以不一样
回复 使用道具 举报
我只是来水一发的
回复 使用道具 举报
iceknc 中级黑马 2015-9-21 22:30:18
8#
我只是进来看答案的
回复 使用道具 举报
存储方式不一样           
回复 使用道具 举报
lvfx 来自手机 中级黑马 2015-9-22 07:18:44
10#
float有个什么协议,其取值范围的算法和long不一样
回复 使用道具 举报
一个 操作小数的一个操作长int型 这两个有啥好比较的
回复 使用道具 举报
maxwell247 发表于 2015-9-21 21:34
请看这个帖子。
http://blog.csdn.net/libaoqiang613/article/details/7896621

谢谢你的答案
回复 使用道具 举报
YaYa 高级黑马 2015-9-22 20:39:25
13#
问java之父当初为什么这么定义 - -
回复 使用道具 举报
a454066378 发表于 2015-9-22 20:39
问java之父当初为什么这么定义 - -

哈哈 见笑了
回复 使用道具 举报
学习一下
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马