包裝類到底是幹什麼的

化身為猿發表於2020-09-28

在java中有八種基本資料型別對應每種基本型別又有八種包裝型別:
基本型別:boolean, char, int, byte,short,long, float,double
包裝器型別:Boolean,Character,Integer,Byte,Short,Long,Float,Double
JAVA是一個物件導向的語言,而基本的資料型別是值型別,在很多情況下是沒法直接用值型別的。比如集合裡面的型別是Object不能接受值型別。在這種情況下,我們處理基本型別需要將其作為物件來進行處理,這種時候需要將其轉化為包裝類。
還有另外一種情況:比如我們要定義一個學生他的考試成績大概為0~100分但是事實上0分和缺考雖然都是0分但是肯定是不一樣的(值型別無法賦空值)。這個時候我們的資料型別就無法支援我們進行這一操作。但是當我們有了包裝類我們就有辦法了。
下面我對包裝類的幾個物件做一個深入的彙總:

Integer

構造方法:

以int型別變數為引數賦值

 Integer number = new Integer(7);//將number賦值為7。

以String型別變數為引數賦值

Integer number = new Integer("45");

常用方法

方法返回值功能
byteValue()byte以byte型別返回該Integer的值
compareTo(Integer another)int比較兩個值相等為0,小於another為負數,大於another為正數
equals(Object obj)boolean比較此物件與指定物件是否相等
intValue()int以int型別返回該Integer的值
shortValue()short以byte型別返回該Integer的值
toString()String返回表示該Integer值的String物件
valueOf(String str)Integer返回儲存指定的String的Integer物件
parseInt(String str)int返回包含在由str指定的字串中的數字的等價整數值

方法的例子我就不舉例了,在這裡僅僅說一下toString()方法。

String str10 = Integer.toString(123);
String str2 = Integer.toBinaryString(123);
String str8 = Integer.toOctalString(123);
String str16 = Integer.toHexString(123);

常量

Integer類提供了以下四個常量。
MAX_VALUE:int型別可以取到的最大值;
MIN_VALUE:int型別可以取到的最小值;
SIZE:用來以二進位制補碼形式表示int值的位數;
TYPE:表示基本型別int的Class例項;

Boolean

構造方法

Boolean b = new Boolean(true);

Boolean b =new Boolean("OK"); 

常用方法

方法返回值功能描述
booleanValue()boolean將Boolean物件的值以對應的boolean值返回
equals(Object obj)boolean判斷呼叫該方法的物件與obj是否相同,當且僅當引數不是null且與呼叫該方法的物件一樣都表示同一個boolean值的Boolean物件時,才返回true
parseBoolean(String s)boolean將字串引數解析為boolean值
toStringString返回表示該boolean值的String物件
valueOf(String s)boolean返回一個用指定的字串表示值的boolean值

常量

TRUE:對應基值true的Boolean物件。
FALSE:對應基值false的Boolean物件。
TYPE:基本型別boolean的Class物件。

Byte

構造方法

byte mybyte = 45;
Byte b = new Byte(mybyte);
Byte mybyte = new Byte("12");

常用方法

方法返回值功能描述
byteValue()byte以一個byte值返回Byte物件
compareTo(Byte another)int在數字上比較兩個Byte物件
doubleValue()dobule以一個double值返回此Byte的值
intValue()int以一個int值返回此Byte的值
parseByte(String s)byte返回一個保持指定String所給出的值的Byte物件
equals(Object obj)boolean將此物件與指定物件比較,如果呼叫該方法的物件與obj相等,則返回true否則返回false

常量

MIN_VALUE:byte型別可取的最小值。
MAX_VALUE:byte型別可取的最大值。
SIZE:用於以二進位制補碼形式表示byte值的位數。
TYPE:表示基本型別byte的Class例項。

Character

構造方法

Character mychar = new Character('s');

常用方法

方法返回值功能描述
charvalue()char返回此Character物件的值
compareTo(Character another)int根據數字比較兩個Character物件,若這兩個物件相等返回0
equals(Object obj)Boolean將呼叫該方法的物件與指定物件相比較
toUpperCase(char ch)char將字元變為大寫
toLowerCase(char ch)char將字元變為小寫
toString()String返回一個表示指定char值的String物件
charValue()char返回此Character物件的值
isUpperCase(char ch)boolean判斷是否為大寫字母
isLowerCase(char ch)boolean判斷是否為小寫字母

常量

CONNECTOR_PUNCTUATION:返回byte型值,表示Unicode規範中的常規型別"Pc"。
UNASSIGNED:返回byte型值,表示Unicode規範中的常規類別“Cn”。
TITLECASE_LETTER:返回byte型值,表示Unicode規範中的常規型別“Lt”。

Double

構造語法

Double a = new Double(double value);
Double b = new Double(String str);

常用方法

方法返回值功能描述
byteValue()byte以byte形式返回Double物件值
compareTo(Double d)int比較兩個值相等為0,小於another為負數,大於another為正數
equals(Object obj)boolean將此物件與指定物件相比較
intValue()int以int形式返回double值
isNaN()boolean如果此double值非數字(NaN)值返回true否則返回false
toString()String返回此Double物件的字串str表示形式
valueOf(String str)Double返回儲存用引數字串str表示的double值的Double物件
doubleValue()double以double型別返回此Double物件
longValue()long以long型別返回此Double物件

常量

MAX_EXPONENT:返回int值,表示有限double變數可能具有的最大指數。
MIN_EXPONENT:返回int值,表示標準化double變數可能具有的最小指數。
NEGATIVE_INFINTY:返回double值,表示儲存double型別的負無窮大值的常量。
POSITIVE_INFINTY:返回double值,表示儲存double型別的正無窮大值的常量。

Number

此類是Boolean,BigDecimal,BigInteger,Byte,Short,Long,Float,Double,Integer的父類,它包含了數值轉換的方法。

方法返回值功能描述
byteValue()byte以byte形式返回指定數值
intValue()int以int形式返回指定數值
floatValue()float以float形式返回指定數值
shortValue()short以short形式返回指定數值
longValue()long以long形式返回指定數值
doubleValue()double以double形式返回指定數值

相關文章