java五种字符串拼接方式:+、concat()、StringBuffer、StringBuilder以及apache.commons中的StringUtils.join()的性能对比。
一、性能结论
基于JDK1.8,直接上结论:
1、非循环体内
StringBuilder=+>StringBuffer>StringUtils.join()>concat()
2、循环体内
StringBuilder>StringBuffer>StringUtils.join()>concat()>+
二、使用选择
1、在多线程环境下,涉及到线程安全,使用StringBuffer
2、不涉及线程安全情况下:
(1)如果是在循环体内,使用StringBuilder(切不可使用+)
(2)如果没有循环,则使用+和StringBuilder是一样的(推荐使用+,毕竟+更简洁直观)
本文对比了Java中五种字符串拼接方式的性能:+、concat()、StringBuffer、StringBuilder及StringUtils.join()。在JDK1.8下,循环内StringBuilder性能最佳,多线程环境建议使用StringBuffer确保线程安全。
253

被折叠的 条评论
为什么被折叠?



