求解?
如果变量i的数量小于一定值的话,m1是最快的;当i比较大时,m3比较快;另外,如果不考虑线程安全的话,jdk5之后可以采用StringBuilder。
第三个性能最好第一个out+=str会频繁的生成string对象,第二个虽说使用了StringBuffer,但是增加时需要进行动态扩容,会导致内存的复制,降低性能
第三个也是用StringBuffer,但是预先分配StringBuffer的空间大小为目标的大小,添加新字符串时StringBuffer都能放下,不用扩容,提高了效率
我只想说m3的解的stringbuffer长度不应该在加一个str.length()么...因为假设i是5,实际执行是6次. 0-- == 0
0-- == 0
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
暂无简介
文章 0 评论 0
接受
发布评论
评论(3)
如果变量i的数量小于一定值的话,m1是最快的;当i比较大时,m3比较快;另外,如果不考虑线程安全的话,jdk5之后可以采用StringBuilder。
第三个性能最好
第一个
out+=str会频繁的生成string对象,
第二个
虽说使用了StringBuffer,但是增加时需要进行动态扩容,会导致内存的复制,降低性能
第三个
也是用StringBuffer,但是预先分配StringBuffer的空间大小为目标的大小,添加新字符串时StringBuffer都能放下,不用扩容,提高了效率
我只想说m3的解的stringbuffer长度不应该在加一个str.length()么...因为假设i是5,实际执行是6次.
0-- == 0