Java jdk对String字符串拼接的优化

从jdk 5开始,Java就对String字符串的+操作进行了优化,该操作编译成字节码文件后会被优化为StringBuilder的append操作。但是,我们不能一味地把String的+ 操作等同于append操作

可以看这篇文章的对反编译字节码文件的分析:
jdk不同版本对String拼接的优化分析

这里只做总结:

  1. 字符串拼接从jdk5开始就已经完成了优化,并且没有进行新的优化。
  2. 循环内String+常量的话会每次new一个StringBuilder,再调用append方法。
  3. 循环外字符串拼接可以直接使用String的+操作,没有必要通过StringBuilder进行append.
  4. 有循环体的话,好的做法是在循环外声明StringBuilder对象,在循环内进行手动append。不论循环多少层都只有一个StringBuilder对象。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值