2020-12-17:java和go,如何高效的拼接字符串?

举报
福大大架构师每日一题 发表于 2020/12/17 22:21:47 2020/12/17
【摘要】 福哥答案2020-12-17:java:stringbuilder 线程不安全。stringbuffer 线程安全。go:[答案来自此链接:](https://blog.csdn.net/m0_37422289/article/details/103362740)1.在已有字符串数组的场合,使用 strings.Join() 能有比较好的性能。2.在一些性能要求较高的场合,尽量使用 buff...

福哥答案2020-12-17:

java:
stringbuilder 线程不安全。
stringbuffer 线程安全。

go:[答案来自此链接:](https://blog.csdn.net/m0_37422289/article/details/103362740)
1.在已有字符串数组的场合,使用 strings.Join() 能有比较好的性能。
2.在一些性能要求较高的场合,尽量使用 buffer.WriteString() 以获得更好的性能。大量拼接用append方法性能最好。
3.较少字符串连接的场景下性能最好,而且代码更简短清晰,可读性更好。
4.如果需要拼接的不仅仅是字符串,还有数字之类的其他需求的话,可以考虑 fmt.Sprintf。
大量拼接效率排序:append> strings.Join()  > bytes.writestring > fmt > +。
***
[评论](https://user.qzone.qq.com/3182319461/blog/1608172805)

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。