Java 基本数据类型与包装类:从内存到封箱拆箱
2026/3/30 3:34:54 网站建设 项目流程

Java中有byte、short、int、long、char、float、double、boolean 8种基本数据类型,这些数据类型的变量在内存中存储真正的“值”。而数组、字符串、对象等引用数据类型的变量,在内存中存储的是对象的引用,也就是内存地址。

Java系统,为每一个基本变量类型,都定义了一个专属的类,又被称为包装类。8大基本类型,对应的包装类如下:

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

基本数据类型可以使用包装类的构造函数,生成包装类的对象,这个过程又叫封箱。包装类的对象,也可以使用方法,生成基本数据类型的数值,这个过程又叫拆箱。

在Java9后,包装类的构造函数的封箱方法被弃用,官方建议使用静态的valueOf()方法进行手动封箱,之后又支持直接使用字面量或者赋值给包装类对象,又叫自动封箱。自动封箱实际上是隐式调用valueOf()方法。

同理,Java也支持自动拆箱,也就是隐式调用拆箱方法。比如:

publicclassApp{publicstaticvoidmain(String[]args){bytea=127;Byteaa=Byte.valueOf(a);// 手动封箱 也可 Byte aa = a 又叫自动封箱byteb=aa.byteValue();// 手动拆箱 也可 byte b = aa 又叫自动拆箱System.out.println(b);// 127shortc=32767;Shortcc=c;// 自动封箱shortd=cc;// 自动拆箱System.out.println(d);// 32767inte=2147483647;Integeree=e;// 自动封箱intf=ee;// 自动拆箱System.out.println(f);// 2147483647charg='a';Charactergg=g;// 自动封箱charh=gg;// 自动拆箱System.out.println(h);// alongi=9223372036854775807L;Longii=i;// 自动封箱longj=ii;// 自动拆箱System.out.println(j);// 9223372036854775807floatk=3.14f;Floatkk=k;// 自动封箱floatl=kk;// 自动拆箱System.out.println(l);// 3.14doublem=3.15;Doublemm=m;// 自动封箱doublen=mm;// 自动拆箱System.out.println(n);// 3.15booleano=true;Booleanoo=o;// 自动封箱booleanp=oo;// 自动拆箱System.out.println(p);// true}}

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询