String类:字符串常量;
StringBuffer类:字符串变量,线程安全;
StringBuilder类:字符串变量,非线程安全;
String类:是不可变对象,如果要改变String对象的内容,则系统会重新创建一个对象,赋值给原来的引用变量。这对JVM虚拟机来说是非常耗时的。所以经常改变内容的字符串尽量不要用String类。
StringBuilder类:内部存在一个可变长度的char[]数组,初始化 数组容量为16,存在扩容。 其append拼接字符串方法内部调用了System的native方法,进行数组拷贝,不会重新生成新对象。
StringBuffer类:内部存在一个可变长的char[]数组,与StringBuilder类基本一致,大部分采用synchronized关键字,实现线程安全。
Java基础-String类与StringBuffer类的笔记
最新推荐文章于 2024-02-27 14:29:22 发布