JAVA - 包装类

目录

包装类是什么

包装类的作用

装箱&拆箱

自动装箱&自动拆箱

自动装箱

自动拆箱


包装类是什么

Java是面向对象的编程语言,但是Java中的八种基本数据类型却是不是面向对象的

实际开发过程中,经常会遇到需要使用对象,而不是内置数据类型的情况。为了解决这个问题,Java语言为内置数据类型提供了对应的包装类

包装类均为java.lang包中

基本数据类型包装类
booleanBoolean
charCharacter
byteByte
shortShort
intInteger
longLong
floatFloat
doubleDouble

包装类的作用

1、包装类增强了java面向对象的性质(统一成面向对象):在集合类中,无法使用int 、double等类型,因为集合的容器要求元素是Object类型,就可以使用对应的包装类

2、包装类还为基本类型添加了属性和方法,丰富了基本类型的操作

注:由于基本数据类型直接在栈内存中存储,不需要在堆中创建对象,因为更为高效

装箱&拆箱

把基本类对应的包装类称作为“对应的箱子”

装箱:从基本数据类型转换为对应的包装类对象

拆箱:从包装类对象转换为对应的基本数据类型 

创建包装类对象有两种方式:new关键字、valueOf()方法 

Integer integer1 = new Integer(8);  //装箱:构造方法创建包装类对象 
System.out.println(integer1);  // 重写了toString方法


Integer integer2 = Integer.valueOf(8); //装箱: 静态方法创建包装类对象
System.out.println(integer2);


int i = integer1.intValue();  //拆箱:从包装类中取出基本类型的数据


自动装箱&自动拆箱

为了方便使用和性能优化,提供了自动拆装箱机制

自动装箱

系统自动将基本类型转换为对应的包装类型

//自动装箱
int a = 10;
Integer a1 = a;		//int类自动装箱成Integer类

自动拆箱

系统自动将包装类型中的数据拆分成为对应的基本类型

//自动拆箱
Integer n = 5;
int n1 = n;		//Integer类自动拆箱成int类

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值