Java中8⼤基本数据类型所占字节以及位数
转载⾃:
8种基本数据类型为:
4种整形:byte,short,int,long
2种浮点类型:float,double
1种Unicode编码的字符单元的字符类型:char
1种Boolean类型:boolean
8种类型所占字节和位数和取值范围如下:
类型占⽤字节占⽤位数数值长度
byte18-128~127(-2的7次⽅到2的7次⽅-1)
short216-32768~32767(-2的15次⽅到2的15次⽅-1)
int432-2的31次⽅到2的31次⽅-1
long864-2的63次⽅到2的63次⽅-1
float432(e-45是乘以10的负45次⽅,e+38是乘以10的38次⽅)(2的-149次⽅~2的128次⽅-1)
double864(2的-1074次⽅~2的1024次⽅)
char216
boolean1
boolean所占字节问题
Thebooleantypeiscompiledintotheinttypeforu,occupying4
Thebooleanarrayiscompiledintoabytearraytype,andeachbooleanarraymemberoccupies1
IntheJavavirtualmachine,1meanstrueand0means
ThisisjustarecommendationoftheJavaVirtualMachine.
Tobesure,itwillnotbe1bit.
1byte=1字节=8bit
⼆、⼩插曲----int和Integer的区别
1.从定义上来看
int是基本类型直接存放数值(类似的还有float、double、String、char)Integer是对象
是⼀个引⽤指向这个对象(类似的有Float、Double、String)
2.初始化的⽅式不同
inti=1;
Integeri=newInteger(1);
int是基本数据类型(⾯向过程留下的痕迹不过是对Java的有益补充)Integer是⼀个类是int的扩展定义了很多的转换⽅法
注意:类似的还有:floatFloat;doubleDouble;String等,其中String较为特殊,基本类型和复杂类似关键字相同
例如当需要往ArrayListHashMap中放东西时像int,double这种内建类型是放不进去的因为容器都是装Object的这时就需要这些
内建类型的外覆类了
Java中每种内建类型都有相应的外覆类
Java中int和Integer关系是⽐较微妙的关系如下
int是基本的数据类型
Integer是int的封装类
int和Integer都可以表⽰某个数值
int和Integer不能够互⽤因为他们是两种不同的数据类型
本文发布于:2022-11-12 14:21:41,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/88/4818.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |