字符串拼接之StringBuilder和string的区别

字符串是我们使用最多的数据类型,有时一些操作需要做大量的字符串拼接,下面分析一下做字符串拼接时StringBuilder和string的区别。

1、string:首先,string是引用类型,存放在堆内存中,有“不可变性”的特性(驻留池机制),但是在做字符串拼接时,每次都会创建一个新对象,也就是每次都要去申请内存空间,因为做大量字符串拼接时性能很差,只适合做少量的字符串拼接。

=》简单演示:才10万数据,哎,惨不忍睹.....

字符串拼接之StringBuilder和string的区别

2、StringBuilder:微软在string的基础上对StringBuilder做了优化,不会每次都去申请内存,而是一下子就申请一大块内存,做大量字符串拼接性能非常高。

=》简单演示:100万数据,一秒不到

字符串拼接之StringBuilder和string的区别