基本数据类型、包装类及String三者之间的相互转化(拆箱,装箱)
1.基本数据类型和包装类之间的转化
//基本数据类型---->对应的包装类:调用包装类的构造器
@Test
public void test() {
int i = 10;
Integer i1 = new Integer(i);
Integer i2 = new Integer("123");
Integer i3 = new Integer("2334fgag")//报java.lang.NumberFormatException,其他类型也是类似转换形式,无论直接写,还是String,本质都要是合法的基本数据类型格式
System.out.println(i1.toString());//此时调用toString()方法的时候已经不会报错了,而i是不能调用toString()方法的
//注意boolean类型的转换较为特殊
Boolean b = new Boolean("true");//除了这行代码和下面那行代码为true之外,其余情况都为false
Boolean b1 = new Boolean(true)//true
Boolean b2 = new Boolean("true1234")//false
//不会报java.lang.NumberFormatException
// 引用类型的默认初始化值为null
}
2.包装类转换为基本数据类型
//包装类---->基本数据数据类型
@Test
public void test1() {
Integer i1 = new Integer(121);
int i2 = i1.intValue();
System.out.println(i2);//121
Float f = new Float("12.21f");
float f2 = f.floatValue();
System.out.println(f2);//12.21
//调用包装类的Xxxx的XxxxValue()方法
// JDK5.0之后,自动装箱和拆箱
int i4 = 12;
Integer i3 = i4;//自动装箱
int i5 = i3;//自动拆箱
}
3.基本数据类型、包装类和String类型之间的转换
//基本数据类型、包装类和String类型之间的转换
@Test
public void test3() {
//基本数据类型、包装类--->String类:调用String类型的静态重载的valueOf(Xxx x)方法
int i1 = 10;
String str1 = i1 + "";
Integer i2 = i1;
String str2 =String.valueOf(i2);
String str3 = String.valueOf(true);//"true"
//String--->基本数据类型、包装类:调用包装类的parseXxx(String str)方法
int i3 = Integer.parseInt(str2);
boolean b1 = Boolean.parseBoolean(str2);
}
4.基本数据类型、包装类及String三者之间的相互转化关系图

- 里面有记录了另外一些方法,但是不是常用的。