美文网首页
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