Java中的8個(gè)基本類型都對(duì)應(yīng)一個(gè)包裝類 byte → Byte short → Short int → Integer long?→ Long float → Float double → Double char → Character boolean→ Boolean 每個(gè)包裝類中都有一個(gè)靜態(tài)的方法來(lái)將java的基本數(shù)據(jù)類型轉(zhuǎn)換為包裝類,這個(gè)靜態(tài)方法接受一個(gè)對(duì)應(yīng)的基本類型參數(shù)然后返回一個(gè)包裝類的引用: Java 1.5版本之后 增加了自動(dòng)裝箱、拆箱機(jī)制,提供基本數(shù)據(jù)類型和包裝類型的相互轉(zhuǎn)換操作。 自動(dòng)裝箱即自動(dòng)將基本數(shù)據(jù)類型轉(zhuǎn)換成包裝類型: public class TestUtil { public static void main(String[] args){ //JDK1.5之前 不可以自動(dòng)裝箱 Integer i1 = new Integer(100); Integer i2 = Integer.valueOf(100); //1.5之后 可以自動(dòng)裝箱 Integer i3 = 100; 自動(dòng)拆箱即自動(dòng)將包裝類型轉(zhuǎn)換成基本數(shù)據(jù)類型,與自動(dòng)裝箱相反: public class TestUtil { public static void main(String[] args){ //JDK1.5之前 不可以自動(dòng)裝箱 Integer i1 = new Integer(100); Integer i2 = Integer.valueOf(100); //1.5之后 可以自動(dòng)裝箱 Integer i3 = 100; //自動(dòng)拆箱 int i4 = i1; //自動(dòng)拆箱的原理 調(diào)用intValue int i5 = i1.intValue(); System.out.println(i4); System.out.println(i5); } } 輸出結(jié)果 100 100 public class TestUtil { public static void main(String[] args){ //將數(shù)字字符串轉(zhuǎn)換為int類型數(shù)字 //將String直接轉(zhuǎn)換為int類型 int value1 = Integer.parseInt("123"); //先將String構(gòu)成一個(gè)Integer對(duì)象,然后拆分 int value2 = new Integer("123"); System.out.println(value1); System.out.println(value2); } } 輸出結(jié)果: 123 123 筆試題 public class TestUtil { public static void main(String[] args){ //將數(shù)字字符串轉(zhuǎn)換為int類型數(shù)字 Integer i1 = 10;//10自動(dòng)包裝成Integer對(duì)象 不是常量區(qū)的10,而是存放在靜態(tài)元素區(qū)的10 Integer i2 = 10;//與i1同時(shí)指向靜態(tài)元素區(qū)的10 Integer i3 = new Integer(10);// 新new 的一個(gè)對(duì)象 10 Integer i4 = new Integer(10);//再new一個(gè) System.out.println(i1 == i2);//== 比較變量里的內(nèi)容(地址) System.out.println(i1 == i3); System.out.println(i3 == i4); System.out.println(i1.equals(i2));//重寫(xiě)了 比值, 不是Object里的equals , System.out.println(i1.equals(i3)); System.out.println(i2.equals(i4)); } } 輸出結(jié)果: true false false true true true 1.==與equals()區(qū)別 ? 來(lái)源:https://www./content-1-316151.html |
|
來(lái)自: 印度阿三17 > 《開(kāi)發(fā)》