1、String 类的数据结构
String 类底层所使用的数据结构为char类型的数组 ......final value[]
数组的特点:按索引查找元素效率比较高 charAt(int index)
增加和删除元素效率比较低
String a="hello"; String b="world"
String c=a+b; 等号右侧有变量参与运算,所以在程序运行时,会在堆中开辟空间
2、StringBuffer与StringBuilder
(1)StringBuffer类的定义
public final class StringBuffer
extends Object
implements Serializable , CharSequence
通过类的定义可知,StringBuffer不允许有子类,Object类中的方法可以被重写 ,具备了两个能力
(2)StringBuffer的构造方法
StringBuffer又被称作"容器", 存储字符串。
二者的底层数据结构相同,都是使用char类型的数组
StringBuffer: jdk1.0 ,线程安全的,效率低
StringBuilder: jdk1.5 , 线程不安全的,效率高