首先,String类
字符串是常量;他们的值在创建之后不能更改。
字符串的底层是一个被fianl修饰的数组,是一个常量,不能改变
private fianl byte[] value;
占用空间多,效率低下;
StringBuilder类
字符串缓冲区,可以提高字符串的操作效率(看成一个长度可以改变的字符串)
底层也是一个数组,但是没有被final修饰,可以改变长度
byte[] byte = new byte[16];
StringBuilder在内存中始终是一个数组,占用空间少,效率高
如果超出了StringBuilter的容量,会自动扩容。