1. 程式人生 > 實用技巧 >Java常用類--包裝類

Java常用類--包裝類

Java常用類--包裝類

  • 對於基本資料型別而言,它其實就是一個數,如果給基本資料型別加點屬性,加點方法,加點構造器之後,這個基本資料型別就對應的完成了封裝,產生了一個新的類,這個類就是包裝類
  • 包裝類是引用資料型別
  • 基本資料型別對應的包裝類
graph TB byte-->Byte short-->Short int-->Integer long-->Long float-->Float double-->Double char-->Character boolean-->Boolean
  • 包裝類的繼承關係

    • Byte---->Number---->Object
    • Short---->Number---->Object
    • Integer---->Number---->Object
    • Long---->Number---->Object
    • Float---->Number---->Object
    • Double---->Number---->Object
    • Character---->Object
    • Boolean---->Object
  • 為什麼要使用包裝類

    • Java語言是面向物件的語言,擅長操作各種類,通過類可以實現更多更高階的功能
    • 由於集合只能使用引用資料型別,所以引用類方便使用集合
  • 包裝類的方法有很多,具體檢視API文件

包裝類的自動裝箱與自動拆箱

  • 自動裝箱與自動拆箱其實就是資料型別之間的自動轉變
  • 自動裝箱就是基礎資料型別自動轉為包裝類
  • 自動拆箱就是包裝類自動轉為基礎資料型別
public class Test03 {
    // 這是main方法,是實現程式主要邏輯
    public static void main(String[] args) {
        // int --->Integer
        // 自動裝箱
        Integer i = 12;
        System.out.println(i);

        // 自動拆箱
        // Integer -->int
        Integer i2 = new Integer(23);
        int num2 = i2;
        System.out.println(num2);
    }
}
  • 自動裝箱與自動拆箱只是一個快速的寫法,使用反編譯工具最後解析class檔案發現其實還是使用了方法進行轉換;
package com.shanlei;

import java.io.PrintStream;

public class Test03
{
  public static void main(String[] args)
  {
    Integer i = Integer.valueOf(12);
    System.out.println(i);

    Integer i2 = new Integer(23);
    int num2 = i2.intValue();
    System.out.println(num2);
  }
}