装箱与拆箱

java有八种基本类型,每种基本类型都有一个对应的包装类。

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

包装类的定义:它是一个类,内部有一个实例变量,保存对应的基本类型的值。这个类一般还有一些静态方法、静态变量和实例方法,以方便对数据进行操作。

各个基本类型和包装类之间的转换

Boolean

1
2
3
boolean bool1 = false;
Boolean boolObj = Boolean.valueOf(bool1);
boolean bool2 = boolObj.booleanValue();

Byte

1
2
3
byte byte1 = 123;
Byte byteObj = Byte.valueOf(byte1);
byte byte2 = byteObj.byteValue();

Short

1
2
3
short short1 = 12345;
Short shortObj = Short.valueOf(short1);
short short2 = shortObj.shortValue();

Integer

1
2
3
int int1 = 12345;
Integer integerObj = Integer.valueOf(int1);
int int2 = integerObj.intValue();

Long

1
2
3
long long1 = 12345;
Long longObj = Long.valueOf(long1);
long long2 = longObj.longValue();

Float

1
2
3
float float1 = 123.45f;
Float floatObj = Float.valueOf(float1);
float float2 = floatObj.floatValue();

Double

1
2
3
double double1 = 123.45;
Double doubleObj = Double.valueOf(double1);
double double2 = doubleObj.doubleValue();

Character

1
2
3
char char1 = 'A';
Character characterObj = Character.valueOf(char1);
char char2 = characterObj.charValue();

每种包装类都有一个静态方法valueOf(),接受基本类型,返回引用类型;也都有一个实例方法xxxValue()返回对应的基本类型。

装箱:基本类型 –> 包装类

拆箱:包装类 –> 基本类型

java1.5以后引入自动装箱和拆箱,可以直接将基本类型赋值给引用类型,反之亦可。

1
2
3
//自动装箱和拆箱
Integer a = 100;
int b = a;
  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2021 Silver Shaded
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信