为了对基本数据类型进行更多更方便的操作,Java就针对每一种基本数据类型提供了一个对应的引用数据类型,这些引用类型就被称为基本类型包装类。
一、分类
每个基本数据类型对应的包装类一般是将基本数据类型的首字母大写就得到对应的引用数据类型:
基本数据类型 | 引用数据类型 |
---|---|
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
char | Character |
boolean | Boolean |
二、Integer类
基本数据类型的包装类主要是用来和字符串之间相互转换的,其中的方法都大致相同,所以我们举例讲解Integer类
1、构造方法
(1)public Integer(int value)
构造一个新分配的 Integer 对象,它表示指定的 int 值。
Integer i = new Integer(100);
(2)public Integer(String s) throws NumberFormatException
构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值。
注意:参数中的字符串必须全部由数字字符组成,否则系统会报出NumberFormatException(当应用程序试图将字符串转换成一种数值类型,但该字符串不能转换为适当格式时,抛出该异常。 )
String s = "123456";
Integer i = new Integer(s);
2、int类型与String类型的相互转化
public class IntegerDemo{
public static void main(String[] args){
//int -- String
int number = 100;
//方式1
String s1 = "" + number;
System.out.println(s1);
//方式2
//public static String valueOf(int i)
String s2 = String.valueOf(number);
System.out.println(s2);
System.out.println("------------------");
//String -- int
//方式1
String s = "100";
Integer i = new Integer(s);
int x1 = i.intValue();
System.out.println(x1);
//方式2
//public static int parseInt(String s);
int x2 = Integer.parseInt(s);
System.out.println(x2);
}
}
三、JDK5的新特性
在JavaJDK1.5版本后,加入了自动装箱和自动拆箱的特性。
自动装箱:基本数据类型在使用中可以直接转换成为对应的包装类类型。
自动拆箱:包装类在使用中直接转换成对应的基本数据类型。
//一般我们在使用引用数据类型的时候,需要调用该类的构造方法
Integer i = new Integer(100);
//但在JDK1.5之后,可以直接将int类型的值赋给Integer类的对象,这就是自动装箱
Integer ii = 100;
//同样,在运算过程中,可以用Integer类的对象直接参与运算,因为在这个过程中会发生自动拆箱
ii+=20;
System.out.println(ii);
注意:在使用包装类类型的新特性的时候,如果做操作,最好先判断是否为null,否则可能会报出空指针异常。
网友评论