概述
- 基本数据类型所对应的引用数据类型。
- Object可统一所有数据,包装类的默认值是null。
基本类型 | 包装类 |
---|
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
char | Character |
boolean | Boolean |
装箱、拆箱
- 八种包装类提供不同类型间的转换方式。
- Number父类中提供的6个共性方法。
- parseXXX()静态方法(除了Character)。
- valueOf()静态方法。
- 注意:需保证类型兼容,否则抛出NumberFormatException异常。
- JDK 5.0之后,自动装箱、拆箱。基本数据类型和包装类自动转换。
public class TestInteger {
public static void main(String[] args) {
int num1=18;
Integer integer1=new Integer(num1);
Integer integer2=Integer.valueOf(num1);
System.out.println("装箱");
System.out.println(integer1);
System.out.println(integer2);
Integer integer3=new Integer(100);
int num2=integer3.intValue();
System.out.println("拆箱");
System.out.println(num2);
System.out.println("-------------JDK1.5之后,提供自动装箱和拆箱----------------");
int age=30;
Integer integer4=age;
System.out.println("自动装箱");
System.out.println(integer4);
int age2=integer4;
System.out.println("自动拆箱");
System.out.println(age2);
System.out.println("-------------基本类型和字符串之间转换----------------");
int n1=255;
String s1=n1+"";
String s2=Integer.toString(n1, 16);
System.out.println(s1);
System.out.println(s2);
String str="150";
int n2=Integer.parseInt(str);
System.out.println(n2);
String str2="false";
boolean b1=Boolean.parseBoolean(str2);
System.out.println(b1);
}
}
整数缓冲区
- Java预先创建了256个常用的整数包装类型对象。
- 在实际应用当中,对已创建的对象进行复用。
public class TestInteger2 {
public static void main(String[] args) {
Integer integer1=new Integer(100);
Integer integer2=new Integer(100);
System.out.println(integer1==integer2);
Integer integer3=Integer.valueOf(100);
Integer integer4=Integer.valueOf(100);
System.out.println(integer3==integer4);
Integer integer5=Integer.valueOf(200);
Integer integer6=Integer.valueOf(200);
System.out.println(integer5==integer6);
}
}