JAVA - 包装类

目录

包装类是什么

包装类的作用

装箱&拆箱

自动装箱&自动拆箱

自动装箱

自动拆箱


包装类是什么

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

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

包装类均为java.lang包中

基本数据类型 包装类
boolean Boolean
char Character
byte Byte
short Short
int Integer
long Long
float Float
double Double

包装类的作用

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类

 

你可能感兴趣的:(JAVA,java,开发语言)