之前没想过这个问题,比较low,一直用+号拼接字符串。
那么加号拼接和用append方法拼接有啥区别呢?
+号拼接的原理是会在底层new一个StringBuilder,例如:str = str + “a”具体就是new StringBuilder().append(str).append("a");
其实实际上用+号拼接字符串的话,+号用的很少或者只用一个,并且不在循环里面用的话,也是可以的,没什么问题,不存在所谓的效率问题,但是+号不能用在 循环结构里面,如果在循环结构里面,那么每一次循环,+号都会new出来的新的StringBuilder对象,这样就很不好了,非常影响效率。
因此,在拼接字符串的时候,我们尽量用append方法进行拼接,二是防止“高手们”无情的批评和指出错误,一是养成使用append方法的习惯,避免在循环内下意识的用+号进行拼接字符串处理。
有篇文章讲的挺好的,我也是看了之后理解了不少才整理出来的这个。
文章地址是:https://blog.csdn.net/m0_37589327/article/details/78605268
感兴趣的小伙伴可以去看看