String
数据结构:final的char数组
String s = new String(“1”); 新建对象
String s = “abc”; 从常量池中查找
线程安全
大量操作字符的时候,不建议使用,因为会大量创建新对象,占用内存
StringBuffer
父类:AbstractStringBuilder
数据结构:char数组
使用的时候,操作自己本身
线程安全,因为方法上都加了synchronized
多线程大量操作字符的时候,建议使用
StringBuilder
父类:AbstractStringBuilder
数据结构:char数组
使用的时候,操作自己本身
线程不安全
单线程,大量操作字符的时候,建议使用
相关知识点
Java关键字 final,synchronized