先知cd——热爱生活是一切艺术的开始
写下来的都是资源,分享给互联网~~均属原创随笔。 转载引用请注明作者changedi。 喜欢应用研究,热爱编程,欢迎交流。
最近看了这篇文章 http://www.ibm.com/developerworks/cn/java/j-ropes/?S_TACT=105AGX52&S_CMP=techcsdn 作者比较了String和StringBuffer与Rope结构的常用操作速度。并以实验证明了Rope的性能。我在自己的机器上实验,同样也证明了Rope的高效,但是作者没有用StringBuilder和Rope做比较,所以我们不妨一试。 暂时的实验结果表明,就append和delete操作而言,StringBuilder胜过Rope,那么Rope的真正优势在哪里呢?时间仓促,没有深入研究,特此立一文,以后细看其结构~~~ 我的测试代码如下:
结果如下: 1.6120785922E10 1.0273193E7 2647639.0 9781992.0 只从数量级比较的话,String的低效就不说了,毕竟基于Char[]实现的,而StringBuffer比StringBuilder慢也可以理解,毕竟加入了同步的考虑,也算是为线程安全付出的代价,但是所谓的树型机制的Rope还是比不过StringBuilder啊~~~ Rope for Java 下载:点击这里。 这里附加了文章中的测试代码:点击这里。
posted on 2010-01-25 15:20 changedi 阅读(2196) 评论(4) 编辑 收藏 所属分类: Java技术
Rope for java也是线程安全的,同步开销少不了。你拿它跟StringBuilder比就不大合适。 回复 更多评论
Rope还是比不过StringBuilder,Rope是同步的,StringBuilder不是同步的,性能上,当然要差一点。 回复 更多评论
原来如此啊~~~~ 怪不得原文作者不比较呢~~~ 看来有必要认真研究一下了~~ 回复 更多评论
为什么有StringBuilder不用却要去用Rope,不累吗 回复 更多评论
Powered by: BlogJava Copyright © changedi