包装类;装箱与拆箱;基本类型与字符串之间的转换
1. 概述
Java 提供了两种类型系统,基本类型与引用类型,使用基本类型在于效率,然而很多情况,会创建对象使用,因为对象可以做更多的功能,如果想要我们的基本类型像对象一样操作,就可以使用基本类型对应的包装类,如下:
2. 装箱与拆箱
基本类型与对应的包装类对象之间,来回转换的过程称为 “装箱” 与 “拆箱” :
装箱:从基本类型转换为对应的包装类对象。
拆箱:从包装类对象转换为对应的基本类型。
自动装箱与自动拆箱:基本类型的数据和包装类之间可以自动的相互转换。
例:
自动装箱:直接把 int 类型的整数赋值包装类。
Integer in = 1; 就相当于 Integer in = new Integer(1);
自动拆箱:in 是包装类,无法直接参与运算,可以自动转换为基本数据类型,再进行计算。
in + 2;就相当于 in.intValue() + 2 = 3.
3. 基本类型与字符串之间的转换
A. 基本类型 --> 字符串(String)
a. 基本类型的值 + "" ;
b. 包装类的静态方法 toString(参数),不是 Object 类的 toString() 重载;
c. String 类的静态方法 valueOf(参数)。
B. 字符串(String) --> 基本类型
使用包装类的静态方法parseXXX("字符串");
Integer 类:static int parseInt(String s)
Double 类:static double parseDouble(String s)
......
例:
public class Demo {
public static void main(String[] args) {
// 基本类型 --> 字符串(String)
int i = 100;
String s1 = i + "";
System.out.println(s1 + 200); // 100200
String s2 = Integer.toString(100);
System.out.println(s2 + 200); // 100200
String s3 = String.valueOf(100);
System.out.println(s3 + 200); // 100200
// 字符串(String) --> 基本类型
int i1 = Integer.parseInt(s1);
System.out.println(i1 - 10); // 90
}
}