1. 程式人生 > 其它 >包裝類的基本用法以及自動裝箱和自動拆箱

包裝類的基本用法以及自動裝箱和自動拆箱

一、包裝類

Java中的基本資料型別沒有方法和屬性,而包裝類就是為了讓這些擁有方法和屬性,實現物件化互動。

基本型別

對應的包裝類

byte

Byte

short

Short

int

Integer

long

Long

float

Float

double

Double

char

Character

boolean

Boolean

數值型包裝類都繼承至Number,而字元型和布林型繼承至Object。

二、基本資料和包裝類之間的轉換

裝箱:基本資料型別轉換為包裝類;

拆箱:包裝類轉換為基本資料型別。

package com.sanyuan.WraperClassTest;

/**
 * 包裝類的基本用法
 * 自動裝箱和自動拆箱
 * @author huang
 *
 */

public class Test01 {
    public static void main(String[] args) {
        //基本資料型別轉換為物件
        Integer i = new Integer(10);
        Integer i2 = Integer.valueOf(20);
        
        //包裝類物件轉換為基本資料型別
        double
d = i2.doubleValue(); //將字串數字轉成包裝類物件 Integer i3 = Integer.valueOf("234"); Integer i4 = Integer.parseInt("334"); //將包裝類物件轉成字串 String str = i3.toString(); //一些常用的常量 System.out.println("int能表示的最大整數:"+Integer.MAX_VALUE);
//自動裝箱 Integer a = 300; //編譯器幫你改成:Integer a = Integer.valueOf(300); //自動拆箱 int b = a; //編譯器幫你改成:a.intValue(); //Integer c = null; //int c2 = c; //編譯器幫你改成:c.intValue(); //java.lang.NullPointerException:物件為空,但我們卻呼叫了他的屬性或方法 //包裝類的快取問題 Integer d1 = 4000; Integer d2 = 4000; //當數值在[-128,127]之間的時候,返回快取陣列中的某個元素。 Integer d3 = 123; Integer d4 = 123; System.out.println(d1==d2); //兩個不同的物件 System.out.println(d3==d4); System.out.println(d1.equals(d2)); } }