Java中8大基本数据类型所占字节以及位数

本文详细介绍了Java中的8种基本数据类型,包括它们的字节占用、位数以及取值范围。此外,还探讨了int和Integer的区别,指出int是基本类型,直接存放数值,而Integer是其封装类,可以作为对象使用,并在存储和使用上的差异。在内存管理和容器使用上,Integer更适合于对象操作的场景。
摘要由CSDN通过智能技术生成

转载自: 博客
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所占字节问题

The boolean type is compiled into the int type for use, occupying 4 bytes.
The boolean array is compiled into a byte array type, and each boolean array member occupies 1 byte.
In the Java virtual machine, 1 means true and 0 means false.
This is just a recommendation of the Java Virtual Machine.
To be sure, it will not be 1 bit.

1byte = 1字节=8bit
二、小插曲 ----int和Integer的区别
1.从定义上来看

int是基本类型 直接存放数值(类似的还有float、double、String、char) Integer是对象
是一个引用指向这个对象(类似的有Float、Double、String)

2.初始化的方式不同

int i = 1;
Integer i = new Integer(1);
int是基本数据类型(面向过程留下的痕迹不过是对Java的有益补充) Integer是一个类 是int的扩展 定义了很多的转换方法
注意:类似的还有:float Float;double Double;String等,其中String较为特殊,基本类型和复杂类似关键字相同
例如 当需要往ArrayListHashMap中放东西时 像int,double这种内建类型是放不进去的 因为容器都是装Object的 这时就需要这些内建类型的外覆类了
Java中每种内建类型都有相应的外覆类

Java中int和Integer关系是比较微妙的 关系如下

  • int是基本的数据类型
  • Integer是int的封装类
  • int和Integer都可以表示某个数值
  • int和Integer不能够互用 因为他们是两种不同的数据类型
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值