其他分享
首页 > 其他分享> > 自动装箱与自动拆箱

自动装箱与自动拆箱

作者:互联网

《算法(第四版)》1.3 节在介绍背包、队列和栈时,顺便介绍了一下 Java 自动装箱与自动拆箱。下面简单总结其相关内容。

Java 中的每一种原始数据类型都有其对应的引用类型:boolean、byte、char、double、float、int、long 和 short 分别对应着 Boolean、Byte、Character、Double、Float、Integer、Long 和 Short。

在处理赋值语句、方法的参数和算术或逻辑表达式时,Java 会自动转换原始数据类型和对应的引用类型。自动将一个原始数据类型转换为一个引用类型被称为自动装箱,自动将一个引用类型转换为一个原始数据类型被称为自动拆箱。

Integer i = 1; // 自动装箱 (int -> Integer)
int j = i;     // 自动拆箱 (Integer -> int)

自动装箱与自动拆箱相当程度上是为泛型提供服务的。在泛型中,类型参数必须被实例化为引用类型,自动装箱和自动拆箱使泛型代码处理原始数据类型变得很方便。

Stack<Integer> stack = new Stack<Integer>();
stack.push(17);      // 自动装箱 (int -> Integer)
int i = stack.pop(); // 自动拆箱 (Integer -> int)

标签:拆箱,int,装箱,自动,Integer,原始数据
来源: https://www.cnblogs.com/Higurashi-kagome/p/15854889.html