1.包装类
1.1基本概念
1.包装类就是把基本数据类型封装在类中。 2.Object类是所有类共同的父类即可以接收所有的类、接口、数组,唯独不可以接收基本数据类型,所以产生了包装类便于被Object类接收也就是向上转型。
1.2对象型包装类
1.对象型包装类是Object直接子类。 2.对象型包装类有两个: (1)Character(char) (2)Boolean(boolean)
1.3数值型包装类
1.数值型包装类是Number子类(Number是抽象类)。 2.数值型包装类包括:Byte、Short、Integer(int)、Long、Float、Double
2.装箱与拆箱
2.1装箱
装箱:将基本数据类型封装在类中(为了向上转型可以被Object接收)。
2.2拆箱
将包装类的对象还原为基本数据类型(为了基本类型的数学运算)。
2.3自动拆装箱
1.用包装类就和用基本数据类型一模一样。
Integer i=10;
int a=i+1;
System.out.println(a);
2.阿里编规约:类中的属性统一使用包装类。 Integer 默认值是null,int默认值是0。 3.Integer在-128到127的区间内有常量池,会复用已有对象。 类比String的直接赋值(字符串常量值)。 4.自动装箱使用valueOf(数值)。 5.自动拆箱使用intValue().
4.String和包装类的相互装换
1.包装类->String 使用String.valueOf(包装类)
2.String->包装类(数据类型) 包装类.Parse数据类型
Integer.parseInt();
Double.parseDouble();
3.代码实现:
package wrapper;
public class MyInt {
private int value;
public MyInt(int value) {
this.value = value;
}
public int intValue() {
return this.value;
}
public static void main(String[] args) {
Integer a = 120;
String str = String.valueOf(a);
int data = Integer.parseInt(str);
Double b = 10.0;
String str1 = String.valueOf(b);
double ret = Double.parseDouble(str1);
System.out.println(data);
System.out.println(ret);
}
}
|