[Java] 基本型態包裹器 (Wrapper)

Long, Integer, Double, Float, Boolean等類別為包裹器(wrapper),利用物件實例作為殼,將基本型態包裹在物件中。

下方為整理Integer, Double的方法,其他的類別包裹器方法類似。

 

(byteValue, doubleValue, floatValue, intValue, longValue, toString)

(compareTo, parseInt, valueOf)

底線為靜態(static)方法

以Integer為例,parseInt和valueOf功用類似,差別為valueO傳回Integer物件( new Integer(Integer.parseInt(s)) ),而parseInt傳回int型別的變數

package YT.Wrapper;

public class WrapperTest {

    public static void main(String[] args) {
        int val1 = 1;
        int val2 = 2;
        Integer wrapper1 = new Integer(val1); // 包裹基本型態
        Integer wrapper2 = new Integer(val2); // 包裹基本型態

        // 將數值轉換成double型態
        System.out.println(wrapper1.doubleValue() / 3);

        // 比較wrapper1 & wrapper誰比較大,若wrapper1大,則傳回數值1;
        // 若wrapper2大,則傳回-1;若兩者相等,則傳回0
        System.out.println(wrapper1.compareTo(wrapper2));

        // 將String型別的變數轉換成Integer物件
        Integer intData = Integer.valueOf("1");
        System.out.println(intData);

        // 將String型別的變數轉換成int型態
        Integer intData2 = Integer.parseInt("2");
        System.out.println(intData2);
    }
}