java字符串格式化性能对比String.format/StringBuilder/+拼接

Posted 太白的技术博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java字符串格式化性能对比String.format/StringBuilder/+拼接相关的知识,希望对你有一定的参考价值。

String.format由于每次都有生成一个Formatter对象,因此速度会比较慢,在大数据量需要格式化处理的时候,避免使用String.format进行格式化,相反使用StringUtils.leftPad,StringUtils.rightPad,然后使用+一次性(注:分为多个独立的+性能会受到较大影响)或者StringBuilder进行拼接能够极大地提升性能。LZ在一个海量数据导出场景中,改写后(其中包括很多BigDecimal及计算)导出格式化性能提升了大约2/3。纯粹的字符串格式化性能平均可提升5-20倍。各种场景的测试可参考:

https://blog.csdn.net/u012123938/article/details/79508637

http://www.it1352.com/956721.html

http://ju.outofmemory.cn/entry/309166

https://www.jianshu.com/p/7eb224b9f064

以上是关于java字符串格式化性能对比String.format/StringBuilder/+拼接的主要内容,如果未能解决你的问题,请参考以下文章

NodeJS中获取时间戳的方法及其性能对比

Java 序列化10倍性能优化对比测试

Java各种反射性能对比

Java各种反射性能对比

java io读取性能对比

实战Redis序列化性能测试(Kryo和字符串)