基本包装类
概念:
基本数据类型使用起来非常方便,但是没有对应的方法来操作这些数据,所以我们可以使用一个类,把基本类型的数据包装起来,这种类叫包装类。可以在包装类中定义一些方法用来操作这些数据。
int->Integer byte->Byte short->Short char->Character float->Float double->Double long->Long boolean->Boolean
一、装箱和拆箱
(一)装箱 :把基本类型的数据放到包装类中
public Integer(int value)构造一个新分配的 Integer 对象,它表示指定的 int 值。
参数:
value - Integer 对象表示的值。
public Integer(String s)
throws NumberFormatException构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值。使用与 parseInt 方法(对基数为 10 的值)相同的方式将该字符串转换成 int 值。
参数:
s - 要转换为 Integer 的 String。
抛出:
NumberFormatException - 如果 String 不包含可解析的整数。
public static Integer valueOf(int i)返回一个表示指定的 int 值的 Integer 实例。如果不需要新的 Integer 实例,则通常应优先使用该方法,而不是构造方法 Integer(int),因为该方法有可能通过缓存经常请求的值而显著提高空间和时间性能。
参数:
i - 一个 int 值。
返回:
表示 i 的 Integer 实例。
从以下版本开始:
1.5
public static Integer valueOf(String s)
throws NumberFormatException返回保存指定的 String 的值的 Integer 对象。将该参数解释为表示一个有符号的十进制整数, 就好像将该参数赋予 parseInt(java.lang.String) 方法一样。结果是一个表示字符串指定的整数值的 Integer 对象。
换句话说,该方法返回一个等于以下值的 Integer 对象:
new Integer(Integer.parseInt(s))
参数:
s - 要解析的字符串。
返回:
保存字符串参数表示的值的 Integer 对象。
抛出:
NumberFormatException - 如果字符串不能解析为一个整数。
(二)拆箱:在包装类中取出基本数据
int intValue();
二、自动装箱与自动拆箱
基本类型的数据和包装类之间可以自动的相互转换,jdk1.5之后出现的特性。
(一)自动装箱
Integer in =1;
(二)自动拆箱
Integer in = 1;
in = in + 2;//相当于①in.intValue()+2②in= newInteger(3);
三、基本类型和字符串之间的转换
(一)基本类型–>字符串
基本类型转换成字符串:
①基本类型+" "
②toString();
③String.valueOf(基本数据类型参数);
(二)字符串–>基本类型
static int parseInt(String s);//出去character类没有之外,其它的七个都有。