java----八大Wrapper类+String
《包装类简介》




《以Integer为例:装箱与拆箱》


自动装箱底层以Integer.valueof(),自动拆箱底层以.intValue();
《与String之间的转化》

《练习题》

三元运算符为一个整体,其中精度最高的为Double,那么精度就要提升


《常用方法》

《String》



通过源码我们可以了解如下:

对于String是个final类型的讲解:

注意这个与下面的语句是不矛盾的,因为str_00只是一个String类型的变量而已,而不是对象

《String创建过程》
String 有如下两种创建过程:

方法一:直接到常量池中去寻找有没有这个要的字符串,有直接指向常量池中的地址,没有在常量池中创建
方法二:先创建对象,其中有个value的成员,再到常量池中去寻找有没有这个要的字符串,再指向常量池中的地址

为什么String str="abc",这样的str能够用String身上的方法?因为在常量池中的String"abc",其本身就是个对象
《练习题》



经过上面我们可以总结出:
1.如果是两个常量字符串相加,直接优化,不创建对象
2.如果是两个字符串对象相加,则会再创建一个对象,指向常量池
《String 在形参中》

你是不是认为是输出 : javaandhava
那就大错特错了,其实就错在认为传给形参的是本身
其实可以将形参当成一个变量来看,传参就可以看成:String str=ex.str,
然后 str="java",与ex.str一点关系也没有
《String的常用方法》

注意:在java中不能够用str[index]的这种方法访问指定下标的字符



《StringBuffer类》

在StringBuffer的父类中:


只有在这个StringBuffer的保存字符串的value数组内容不够时,才会更新地址
《StringBuffer的构造器》


《StringBuffer 与 String 之间的相互转化》

《StringBuffer的常用方法》


《StringBuild类》



《总结》




浙公网安备 33010602011771号