JAVA基本包装类

JAVA的包装类

一、Java是一门面向对象的语言,但是在Java中设计了8种的基本数据类型却不是面向对象的,这在实际使用中十分的不方便,为了弥补掉这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样的八个基本数据类型对应的类称为包装类。

  • 基本数据类型所对应的引用数据类型。
  • Object可统一所有数据,包装类的默认值是null
  • 包装类中实际上就是持有了一个基本类型的属性,作为数据的存储空间(Byte中有一个byte属性),还提供了常用的转型方法,以及常量
  • 对应的类型如下
基本类型 包装器类型
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean

二、Java中的包装器类主要的目的:

  • 提供一种机制,将基本值“包装”到对象中,从而使基本值能够包含在为对象而保留的操作中,java5增加了自动装箱和拆箱,可以由java自动处理了。
  • 为基本值提供分类功能。这些功能大多数于各种转换有关:在基本值和String对象间相互转换,在基本值和String对象之间按不同基数转换。

三、包装类共同的方法

  • 带有基本值参数并创建包装类对象的构造函数。
    例如 Integer in = new Integer(145);
  • 带有字符串参数并创建包装类对象的构造函数.
    例如:Byte by = new Byte(”127“);
  • 可生成对象基本值的typeValue方法.
    例如:obj.intValue();
  • 将字符串转换为基本值的parseType方法。
    例如:Integer.parseInt(“110”);
  • 生成哈稀表代码的hashCode方法。
    例如:obj.hasCode();
  • 对同一个类的两个对象进行比较的equals()方法。
    例如:obj1.eauqls(obj2);
  • 生成字符串表示法的toString()方法。
    例如:obj.toString().
  • 字符型包装类型转换成普通类型
    byteValue()
    shortValue()
    intValue()
    longValue()
    doubleValue()
    floatValue()
    四、装箱和拆箱
    Java为每种基本数据类型都提供了对应的包装器类型,Java SE5之前,如果要生成一个数值为1的Integer对象
Integer i = new Integer(1);
Integer i = new Integer("1");
  • Java SE5开始就提供了自动装箱的特性
Integer i = 1; 装箱
  • 这个过程中会自动根据数值创建对应的 Integer对象,这就是装箱。
  • 拆箱跟装箱对应,就是自动将包装器类型转换为基本数据类型。
Integer i = 1; //装箱
int i2 = i; //拆箱
  • 装箱就是自动将基本数据类型转换为包装器类型;拆箱就是自动将包装器类型转换为基本数据类型。

注意

Integer number = null;
int f = number.intValue();
编写时不会报错,但编译是通不过的
  • 装箱过程是通过调用包装器的valueOf方法实现的,而拆箱过程是通过调用包装器的xxxValue方法实现的。(xxx代表对应的基本数据类型)。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章