包装类,装箱、拆箱

什么是包装类?

先来了解一下基本数据类型

八个基本数据类型:byte、short、int、float、double、boolean、char、long

基本数据类型是存储在栈空间里的,引用数据类型数据都在堆里面。为什么基本数据类型是存储在栈里面呢?可以这么来理解:堆里面是存储对象的,这一点很清楚,那么对象的地址存放在哪呢?存放在栈里面的,这一点清楚吧?地址是什么呢?地址不就是一些数字的组合吗?数字不就是基本数据类型吗?所以栈里面存储基本数据类型(个人理解)

栈里面存储的是对象的地址

基本数据类型数据是没有属性和方法的,为了让他们有属性和方法,所以Sun公司为他们设计了引用数据类型

 

包装类对应:

包装类,装箱、拆箱

 

什么是装箱?

我们把栈里面的基本数据,拿到堆里面的引用数据的过程,就是装箱操作

 

什么是拆箱?

我们把堆里面的引用类型拿到栈里面的基本数据类型过程,就叫做拆箱

 

包装类,装箱、拆箱

 

实际背后的操作是:Integer.valueOf  和 intValue方法。

包装类,装箱、拆箱

 

 

下面这种转换不是基本与引用的转化了,是基本类型和字符串的转化

基本类型 和 字符串的转换

 

基本类型转化成字符串:

有两种方法,第一种直接使用 + 号,在后面加一个空的字符串

第二种。使用integer提供的toString方法

包装类,装箱、拆箱

其中toString方法,可以在方法里面定义 转化成哪个进制

包装类,装箱、拆箱

 

 

字符串转化成基本类型:parsexx

包装类,装箱、拆箱

 

注意字符串里面不能包含非数字