String:长度不可变,每次操作运行库都会生成新的字符串并将原来的变量重新指向,旧的字符串则会等待垃圾回收。由于上面的特性,避免复制同一个字符串的多个对象,会利用CLR的字符串留用机制,减少内存的损耗。
StringBuilder:StringBuilder其实是由Char数组构成的。构建新的StringBuilder时能设置容量大小,当添加字符串,超过已分配的数组大小时,就会创建一个新的数组,此时容量会翻倍,旧的数据就会等待垃圾回收。
2022-05-22 20:20:13
String:长度不可变,每次操作运行库都会生成新的字符串并将原来的变量重新指向,旧的字符串则会等待垃圾回收。由于上面的特性,避免复制同一个字符串的多个对象,会利用CLR的字符串留用机制,减少内存的损耗。
StringBuilder:StringBuilder其实是由Char数组构成的。构建新的StringBuilder时能设置容量大小,当添加字符串,超过已分配的数组大小时,就会创建一个新的数组,此时容量会翻倍,旧的数据就会等待垃圾回收。