包装类与String以及基本数据类型之间的类型互转(小白理解,小白编写,欢迎大神指点,小白跪谢)

@

一、前言(可忽略)

        emmmm....还是免了,写多了自己都烦,直接进入正文。

二、包装类和String以及基本数据类型之间的类型互转

小白理解:
      小白这里以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方法,将对象转换为字符串形式来显示)---------具体,自己去翻底层源码去。

结果:

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

如果你能弄懂到这里,恭喜,你对这三者的理解已经如德芙一样丝滑了。

最最最后说一下,将自己不理解的地方,一口气用自己的语言表达出来是真的爽!!!!!!!!!

posted @ 2021-03-31 19:00  程序猿江小白  阅读(125)  评论(0编辑  收藏  举报