Java创建对象的时候属性用基本数据类还是包装类好

本文详细对比了Java中的基本数据类型如int、double与它们的包装类如Integer、Double的区别。探讨了基本类型在计算效率上的优势及无法处理null值的问题,而包装类虽能处理null但会占用更多内存。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基本数据类
Java中的基本数据类型不是面向对象的,它们只是纯粹的数据,除了数值本身的信息之外,基本类型数据不带有其他信息或者可操作方法。

类型字节数
byte1
short2
int4
long8
char2
float4
double8
boolean1

优点:
1,用于计算是效率高;
2,值比较方便,使用 == 就可以了。

缺点:
1,从数据库中查出值时可能会有null,基本类型接收NULL值有NPE风险(java.lang.NullPointerException NPE 空值异常);
2,默认值和NULL值不能传达同一种信息,例如考试分数字段,如果使用Integer类型,那么没有参加考试的分数可以设置为null;如果用int类型,那么分数值都是0,无法没有参加考试还是参加考试得0分。

包装类
为了方便操作基本数据类型值,将其封装成了对象,在对象中定义了属性和行为丰富了该数据的操作。用于描述该对象的类就称为基本数据类型对象包装类。

基本数据类包装类字节数
byteByte16
shortShort16
intInteger16
longLong16
floatFloat16
doubleDouble16
charCharacter16
booleanBoolean16

所有基本类型封装对象所占内存的大小都是16字节,但是还是有区别,比如:
Integer对象虽然占用了16个字节的内存,但是只是利用了Object所占内存(8个字节)+int所占内存(4个字节)=12字节,还有4个字节根本没有被使用。

优点:
1,可以存放null,从数据库中查出值时可能会有null;

缺点:
1,不能使用 == 比较相等。
2,占用更多的内存空间;

总结
1,所有POJO类属性必须使用包装数据类型;
2,所有的局部变量推荐使用基本数据类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值