美文网首页
Java String + 拼接是如何实现的

Java String + 拼接是如何实现的

作者: Anne_胖达 | 来源:发表于2021-03-10 13:30 被阅读0次

Java中String通过"+"进行字符串拼接,但是这个如何实现的呢

public class StringAppend {
    public static void main(String[] args) {
        String name = "World";
        System.out.println("Hello " + name);
    }
}

参照如上的一段代码进行Hello World打印,使用如下命令查看编译的结果

javap verbose StringAppend.class

根据编译结果右侧红框标出的结果来看,String + 的字符串拼接,会转而变成构造一个StringBuilder对象,然后通过append方法拼接余下的内容。

阿里巴巴开发手册中说明在for循环中不要使用String + 操作,而推荐使用StringBuilder,多线程则可以使用StringBuffer。
为什么呢,参照编译结果可以得出:在循环中使用String+操作,会进行大量的StringBuilder对象创建,会造成大量的内存分配回收工作,从而造成性能的损耗。

相关文章

网友评论

      本文标题:Java String + 拼接是如何实现的

      本文链接:https://www.haomeiwen.com/subject/xohwqltx.html