近期生产上有一段程序非常慢,执行完成大概需要2-3小时左右,查看代码发现使用String拼接大字符串,果断使用StringBuffer拼接,修改完后发现只需要7分钟左右。发现StringBuffer在这个程序中比String效率高非常多,于是特意写了个测试程序测试。
测试结果如下:在2W次左右拼接字符串时,String与StringBuffer效率相差不大,大于2W次后,效率相差越来越大。拼接20W次时,使用StringBuffer,耗时18毫秒;使用String耗时350秒左右。
以前知道StringBuffer比String效率高,但是没有直观的数据体现,通过这次之后,有了更直观的体现。