java中StringBuilder清空效率比较
2016-10-13 10:43
369 查看
都知道如果多个字符串拼接的话,用StringBuilder.append会比str+=""效率高很多
因为不用创建string对象和数组拷贝,
在jdk1.5中测试了3中方法清空builder
所以本人测试时new效率会高,但是网上很多人测试说delete效率高,希望大家拷贝代码到自己的环境中亲子测试下
因为不用创建string对象和数组拷贝,
在jdk1.5中测试了3中方法清空builder
package com.jb.efile.model; import java.io.IOException; public class Test { private static long time; public static void main(String[] args) throws IOException { StringBuilder builder = new StringBuilder(); time = System.currentTimeMillis(); for(int i=0;i<10000000;i++){ builder = new StringBuilder(); builder.append("aa"); builder.append("bb"); builder.append("cc"); builder.append("dd"); builder.append("ee"); } System.out.println("new 耗时:" + (System.currentTimeMillis() - time)); for(int i=0;i<10000000;i++){ builder.delete(0, builder.length()); builder.append("a"); builder.append("b"); builder.append("c"); builder.append("d"); builder.append("e"); } System.out.println("delete 耗时:" + (System.currentTimeMillis() - time)); for(int i=0;i<10000000;i++){ builder.setLength(0); builder.append("1a"); builder.append("1b"); builder.append("1c"); builder.append("1d"); builder.append("1e"); } System.out.println("setLenth=0 耗时:" + (System.currentTimeMillis() - time)); } }输出:
new 耗时:1146 delete 耗时:2268 setLenth=0 耗时:3371
所以本人测试时new效率会高,但是网上很多人测试说delete效率高,希望大家拷贝代码到自己的环境中亲子测试下
相关文章推荐
- Java中StringBuilder的清空方法比较
- Java中StringBuilder清空数据方法比较
- (转)Java中StringBuilder的清空方法比较
- Java中StringBuilder的清空方法比较
- Java中StringBuilder的清空方法比较
- Java中StringBuilder的清空方法比较
- Java中StringBuilder的清空方法比较
- Java中StringBuilder的清空方法比较
- java中String、StringBuilder和StringBuffer效率的比较
- Java中StringBuilder的清空方法比较
- Java中StringBuilder清空数据方法比较
- Java学习札记14:一个比较String、StringBuffer和StringBuilder之间效率差别的简单例子
- java操作Excel效率之poi与fastexcel比较
- java关于String 和StringBuilder比较
- mod在java与plsql中的效率比较
- Java的内存复制(主要是数组)效率比较
- Java中迭代列表中数据时几种循环写法的效率比较
- JAVA中int转String类型效率比较
- java map对象的效率比较
- C/C++/Perl/汇编/Java效率比较---读后感