包裝類的使用方法以及注意事項

2021-09-29 02:56:25 字數 1187 閱讀 9632

equals和==在判斷

int d = 128;

integer i1 = integer.valueof(d);

integer i2 = integer.valueof(d);

system.out.println(i1==i2);//false引用不同

system.out.println(i1.equals(i2));//true,內容d相同類名一致

==判斷的是引用位址是否相同,而equals只是單純判斷內容時否相同,equals還會涉及類名是否一樣呢

public boolean equals(object obj)

valueof()是類方法,

double d1 = double.valueof(123.0);

//double d1=new double(123.0);相同

double d2 = double.valueof(123.0);

system.out.println(d1==d2);//false

system.out.println(d1.equals(d2));//true

* 包裝類可以將字串解析為對應的基本型別,前提是該字串正確描述基本資料型別

* 可以儲存的值,否則解析時會丟擲解析異常**/

string str="123";

int d=integer.parseint(str);

system.out.println(d);

double dou=double.parsedouble(str);

system.out.println(dou);

/** jdk5版本以及以後不報錯

*新特性自動拆裝箱,使得編譯期在編譯期間補充**完成基本呢型別與對應的包裝之間轉換

*的**,使得我們在編寫源**時可以在基本型別與引用型別之間直接賦值

*/int a=1;

/** 這裡觸發了自動裝箱特性,編譯器在編譯時會將**改為:

* integer i=integer.valueof(a);

* 將基本資料型別轉為包裝類

*/integer i=a;

/** 下面**觸發了自動拆裝特性,編譯器會改為:

* a=i.intvalue();

* 將包裝類轉換為對應的基本型別

*/a=i;

system.out.println(a);

泛型的使用方法以及注意事項

1使用泛型可以解決型別轉換的問題 在編譯器發現問題,而不是執行期才發現 2泛型只能是引用型別,不能是基本型別 3方法中如果有泛型,那麼傳入的引數型別必須和方法中宣告的型別完全一致 如果希望方法中的泛型可以接收任意型別那麼不能使用object,可以使用萬用字元?問號 4乙個泛型類的引數可以是一般的引用...

包裝類及使用時的注意事項

基本資料型別 列舉 enum int char boolean number 包裝類把基本型別的資料轉換為物件 把基本資料型別包裝起來就會把資料大開頭變為大寫,變為。類 包裝類 integer,double,float,byte,boolean,character,long,short 型別轉換 基...

HashMap的使用方法及注意事項

99 map 對映 map 的keyset 方法會返回 key 的集合,因為 map 的鍵是不能重複的,因此 keyset 方法的返回型別是 set 而 map 的值是可以重複的,因此 values 方法的返回型別是 collection,可以容納重複的元素。100 map注意事項 a public...