1. 首先明确 StringBuffer类与 StringBuilder类均继承了抽象类 AbstractStringBuilder类
父类初始化:
String 类有一个 trim()方法 和 StringBuffer 与 StringBuilder类有一个trimToSize()方法需要节约内存的时候可以使用
StringBuilder 在创建实例的会给我们一个初始容量
StringBuilder stringBuilder = new StringBuilder();
System.out.println(stringBuilder.capacity());//初始容量为16
//StringBuilder的最大容量
//private static final int MAX_ARRAY_SIZE = Integer.MAX_VALUE - 8;
StringBuilder继承了AbstractStringBuilder,new StringBuilder()会默认调用父类AbstractStringBuilder的构造函数创建一个容量为16的char数组
当追加之后的字符串大小大于大于当前容量时,StringBuilder会自动扩容,扩大到当前容量的2倍+2
转载:https://blog.csdn.net/tomorrow_one/article/details/108261478
https://blog.csdn.net/weixin_41240250/article/details/80476286
StringBuilder 以及 StringBuffer默认大小与扩容
原文:https://www.cnblogs.com/alter888/p/14475791.html