1.包装类基本概念与介绍
在Java中,任何一个基本类型都有一个对应的包装类型
有了类的特点,就可以调用类中的方法
包装类除了封装一个基本类型的值,同时提供了丰富的操作方法
例如将一个字符串转换成数值类型等:
如:int -> integer类, byte-> Byte类, char-> Character类等
2.拆箱与装箱概念
2.1 装箱
基本数据类型包装成包装类的实例 —装箱
1.通过包装类的构造器实现:
int i = 500;
Integer t = new Integer(i);
2.2通过字符串参数构造包装类对象:
Float f = new Float(“4.56”);
Long l = new Long(“asdf”); //NumberFormatException
2.2 拆箱
获得包装类对象中包装的基本类型变量 —拆箱
例如调用包装类的.xxxValue()方法:
boolean b = bObj.booleanValue();
大多数数值类型的包装类都有:
parseXXX()返回基本型, 静态方法
xxxValue()返回基本类型, 实例方法
valueOf()返回包装类型,静态方法
这里xxx表示相应的数值类型。
// xxxValue(): 返回基本类型, 实例方法. Xxx表示的是相应的数值类型(int,byte,....)
//因为是实例方法,必须要有包装类型实例,不能使用类名.intValue
int intValue = integer.intValue();
byte byteValue = integer.byteValue();
System.out.printf("intValue = " + intValue + ", byteValue = " + byteValue);
// Integer.parseXxx("33"); Xxx表示的是相应的数值类型(int,byte,....)静态方法
int value = Integer.parseInt("44");
System.out.println("value = " + value);
// jdk1.5+提供了自动装箱与拆箱功能
// Integer -> int 自动拆箱
// valueOf(数值型 | String): 返回的是包装类型(对象), 静态方法。以下两种都可以编译运行
// Double aDouble1 = Double.valueOf("66.8");
Double aDouble1 = Double.valueOf(66.8);
double dbl = aDouble1;
System.out.println(dbl);
JDK1.5之后,支持自动装箱,自动拆箱。但类型必须匹配。