一.基本数据类型===》装换成包装类:调用包装类的构造器
@Test
public void solution(){
int num = 10;
//System.out.println(num.toString());基本数据类型没有toString所以这样写不能编译通过
//尝试转换成包装类进行输出
Integer num1 = new Integer(num);
System.out.println(num1.toString());
Integer num2 = new Integer("123");
System.out.println(num2.toString());
//报异常 NumberFormatException
// Integer num3 = new Integer("123abc");
// System.out.println(num3.toString());
}
值得注意的是:构造器中如果加入的String类型,要符合相对应的数据类型的格式。如果不符合编译就不通过。不过Boolean除外,他可以编译通过。不过值依然只有true和false。(看他的源码可知Boolean进行了优化)
二.包装类===》基本数据了类型:调用包装类Xxx的xxxValue()
@Test
public void solution1(){
Integer num1 = new Integer(123);
int num = num1.intValue();
System.out.println(num);
}
当然,在JDK5之后就可以自动拆箱装箱了。
三.基本数据类型,包装类===》String类型:调用String重载的valueOf(Xxx xxx)
@Test
public void test(){
int num1 = 10;
//方式一
String str1 = num1 + "";
System.out.println(str1);
//方式二
float f1 = 12.3f;
Float f2 = new Float(12.4);
String str2 = String.valueOf(f1);
String str3 = String.valueOf(f2);
System.out.println(str2);
System.out.println(str3);
}
四.String类===》基本数据类型,包装类:Parserxxx()
@Test
public void test1(){
String str = "123";
int num = Integer.parseInt(str);
System.out.println(num);
String str2 = "true1";
boolean b = Boolean.parseBoolean(str2);
System.out.println(b);//false
}