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代表對應的基本數據類型)。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章