long和float到底哪个范围大?
java中自动类型提升的顺序为:
byte、short、char --> int --> long --> float --> double
那么问题来了:
long和float到底哪个范围大?
long 8个字节
float 4个字节
为什么float存储范围比long大呢?
代码中测试类型转换:
long l = 123456;
float f = 123.4F;float f1 = l; //隐式,自动类型转换long l1 = (long)f; //强制类型转换
通过代码可以看出,long类型的变量值可以赋值给float类型的变量,而float类型的变量值不可以直接赋值给long类型的变量,需要进行强制类型转换。
原因:它们底层的存储结构不同
float占4个字节,32个二进制位
1位代表的是符号位
8位代表指数位,8位最小是00000000,最大是11111111,范围也就是0 ~ 255,IEEE 754规范(0代表0,255代表无穷大,剩下的1 ~ 254,规定每个指数减去127,指数的范围就变成-126 ~ 127),而long是8个字节,也就是64位,除去符号位,指数范围是0 ~ 63,结论:long的取值范围远远小于float。
剩下的23位代表的是尾数位(小数位)
long和float到底哪个范围大?相关推荐
- 一个Java对象到底占用多大内存?
最近在调研MAT和VisualVM源码实现,遇到一个可疑问题,两者计算出来的对象大小不一致,才有了这样疑惑. 一个Java对象到底占用多大内存? 为了复现这个问题,准备了4个最简单类: class A ...
- 一个Java对象到底占多大内存?(转)
最近在读<深入理解Java虚拟机>,对Java对象的内存布局有了进一步的认识,于是脑子里自然而然就有一个很普通的问题,就是一个Java对象到底占用多大内存? 在网上搜到了一篇博客讲的非常好 ...
- java string占用内存_Java中String到底占用多大的内存空间?
写在前面 对于Java中的String类占用多大的内存空间这个问题,是最近面试中问的比较多的一个问题.很多小伙伴的回答的都不是很正确,有说不占空间的,有说1个字节的,有说2个字节的,有说3个字节的,有 ...
- java占用内存多大_[转帖]一个Java工具到底占用多大内存?
一个Java工具到底占用多大内存? https://www.jianshu.com/p/194b745884a5 最近在调研MAT和VisualVM源码实现,遇到一个可疑问题,两者盘算出来的工具巨细不 ...
- 一个Java对象到底有多大?
点击上方"方志朋",选择"置顶公众号" 技术文章第一时间送达! 出处:http://u6.gg/swLPg 编写Java代码的时候,大多数情况下,我们很少关注一 ...
- 一个 Java 对象到底有多大?
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 李小武 来源 | http://blog.li ...
- android 6gb和8gb区别,手机6GB内存和8GB内存的差距到底有多大?你可能被忽悠了!...
原标题:手机6GB内存和8GB内存的差距到底有多大?你可能被忽悠了! 随着科技的发展,现在手机已经是人们生活中必需品,当然现在手机内存也是越来越大,4G运行内存已经是标配了,然而很多人都在好奇6GB运 ...
- 3*3卷积核 5*5卷积核到底有多大区别
为了比较3*3卷积核 和 5*5卷积核在性能上到底有多大区别设计了两个网络去进行对比, 1.两个3*3的卷积核,2个池化层,2个全连接层 2.两个5*5的卷积核,2个池化层,2个全连接层 两个网络的收 ...
- java 如何循环执行一个对象_一个Java对象到底有多大?
编写Java代码的时候,大多数情况下,我们很少关注一个Java对象究竟有多大(占据多少内存),更多的是关注业务与逻辑.但是殊不知,在我们不经意间,大量的内存被无形地浪费了. 一个Java对象到底有多大 ...
最新文章
- Flink在快手实时多维分析场景的应用
- 通过XmlDocument读写Xml文档(转)
- python学习笔记(四)-数据类型
- (转)java.lang.RuntimeException: Missing type parameter
- c语言程序设计的顺序结构的常用控制语句,C语言程序设计教程-第03课-顺序结构的程序设计.ppt...
- python继承多重继承
- dw服务器文件夹在哪里,Dreamweaver CC
- 他说:越成熟,越觉得自己平庸
- hdu 2034 - 集合操作
- django+echarts+ajax异步+显示优化--基本例子
- ASP.NET 服务端GZIP压缩
- 【图像融合】基于matlab curvelet变换图像融合【含Matlab源码 776期】
- java实现图片去除底色,图片变成透明背景
- HLG 1506 屠夫和狙击手【判断点在线段上+线段与圆相交】
- ”什么?穆冉不敢相信地看向穆大海
- 在vue2、vue3中基于Three.js使用多张全方位照片拼接全景vr效果
- 【OpenCV】生成透明的PNG图像
- 【优雅编程之道】之注释的9点建议
- 推动人工智能教育发展,创新学校高质量发展模式
- WVGA与HVGA、QVGA详细解答