包裝類的基本用法以及自動裝箱和自動拆箱
阿新 • • 發佈:2021-08-29
一、包裝類
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); //包裝類物件轉換為基本資料型別 doubled = 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)); } }