代码中使用的StringBuffer buf = new StringBuffer(),没有指定初始化的大小(其初始容量为 16 个字符),

如果在业务上,要拼接很多字符串,远远超过16个字符,StringBuffer就会不断的再次分配容量:

StringBuffer增长的规律为 (旧值capacity+1)*2  ;

它会将旧的字符串拷贝到新的分配的缓存空间。

如果不指定合适的大小,也会影响效率。

因此要估计可能存储字符的大致大小,指定一个容量

 StringBuffer buf = new StringBuffer(2048);

相关文章:

  • 2021-11-27
  • 2021-07-29
  • 2022-02-27
  • 2022-12-23
猜你喜欢
  • 2021-08-27
  • 2022-12-23
  • 2022-12-23
  • 2022-01-10
  • 2021-04-20
  • 2021-09-23
相关资源
相似解决方案