Java8中使用"+"进行字符串拼接还是使用StringBuilder?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java8中使用"+"进行字符串拼接还是使用StringBuilder?相关的知识,希望对你有一定的参考价值。

Java8中"+"拼接的时候编译后底层会使用StringBuilder,如果是非循环体和使用StringBuilder相差无几;如果是循环体,在用"+"进行字符串的拼接的时候,底层实际上每一次循环都在New一个新的StringBuilder,然后使用append()方法来把字符串拼接上,因此循环体内每次循环的时候New一个StringBuilder对象,导致创建多次对象,进而导致程序运行效率下降。
总结:
1、如果不是在循环体中进行字符串拼接的话,直接使用+就好啦。
2、如果在并发场景中进行字符串拼接的话,需要使用StringBuffer来代替StringBuilder。




以上是关于Java8中使用"+"进行字符串拼接还是使用StringBuilder?的主要内容,如果未能解决你的问题,请参考以下文章

何用Java8 Stream API进行数据抽取与收集

Java8 新特性中的Stream,如何按照条件替换原来stream中的数据?

Android 使用Java8新特性之"方法引用"

来自 Spring MVC 中 LocalDateTime(java 8) 的 Json 字符串

Java8中Stream中的limit方法调用原理是啥?

Java8中Stream类中的forEach是抽象方法,为啥在调用的时候不用重写该方法就能实现遍历?