@code
emmmm....仍是免了,寫多了本身都煩,直接進入正文。對象
小白理解:
小白這裏以int爲例,int轉Integer爲開頭字符串
int->Integer源碼
Integer I=new Integer(100);//手動裝箱(int->Integer) //Integer I=100;//自動裝箱 System.out.println("int->Integer:"+I);//int->Integer
注意:看上去I是Integer類型,實際上底層因爲I是引用類型會自動調用toString方法,將對象轉換爲字符串形式來顯示)---------具體,本身去翻底層源碼去。string
結果:class
int->Integer:100
仍是以I爲例,時間緊湊,emmm...具體直接(上圖)。數據類型
Integer->String引用
Integer I=new Integer(100); String X=String.ValueOf(I);//Integer->String System.out.println(X);//這裏因爲X是String類型,不記得請看左下--------小白原創String類。 //輸出String對象自動調用toString
注意:valueOf()方法的做用---------------類型轉換,一般是哪一個類型調用,就轉哪一個類型,但包裝類中的Integer.parsetInt()不是。(對包裝類有點印象,英語好的大佬,都看得出來,嗯。)方法
結果:數據
Integer->String:100
String->int
Integer T=new Integer(100); //int->Integer String X=String.ValueOf(T); //Integer->String System.out.println("String->int:"+Integer.parsetInt(X)); //這裏就須要用到parsetInt()方法了,別問,問就是這個方法的做用就是String->int
結果:
String->int:100
好,我們接下來倒過來。
int->String
int N=100; System.out.println("int->String:"+N+"");//向上轉型 System.out.println("int->String:"+String.toString(N));//將100轉換爲Sting類型
(小白深度剖析:其實不調用String.toString也可,由於print底層源碼輸出時,也會經過valueOf()方法將int轉爲字符串形式,而經過類型轉換String.valueOf(底層則是toString,將對象轉換爲字符串形式))
結果:
int->String:100 int->String:100
上面,咱已經講到int->Sting了,嗯,加油。
String->Integer
String M="123"; System.out.println("String->Integer:"+Integer.valueOf(M));//調用Integer類的valueof()方法將String轉換爲Integer
結果:
String->Integer:123
最後,完工了。
Integer->int
//借用一下圖一: Integer I=1000: System.out.println("Integer->int:"+I.intvalueOf())//手動拆箱 int U=I;//自動拆箱 System.out.println("Integer->int:"+U);
結果:
Integer->int:1000 Integer->int:1000
若是你能弄懂到這裏,恭喜,你對這三者的理解已經如德芙同樣絲滑了。
最最最後說一下,將本身不理解的地方,一口氣用本身的語言表達出來是真的爽!!!!!!!!!