一、String对象的创建
二、String类的常用方法
三、String类的本质
String类本质是一个字符数组
四、String与字节数组的转换
在默认的UTF-8编码下转成字节数组并且输出
在默认的UTF-8编码下,将字节数组再次转成字符串,并输出查看
使用指定编码格式,将字符串转成字节数组,或者将字节数组转成字符串
五、String中的 == 和 equal 方法区别
== :对于基本数据类型,比较的是具体的值;
对于引用数据类型,比较的是引用的地址是否相同; 比如对象,比较的是引用的地址是否相同。
在String中,如果直接用字符串赋值,那么比较的是常量池里的数值,如果用new方式创建,那么比较的是引用地址
equal方法:
如果一个类没有自己定义 equals 方法,它默认的equals 方法(从Object 类继承的)就是使用==操作符,也是在比较两个变量指向的对象是否是同一对象
如果希望比较该类创建的两个实例对象的内容是否相同,那么你必须覆盖 equals 方法
String类的equal方法,已经重写了,比较的是字符串的内容是否相同
栈:存放类的引用
常量池:存放字符串常量
堆:存放new创建的对象
六、String的不可变性
七、StringBuilder介绍