一、String、StringBuilder、StringBuffer的执行效率

StringBuilder > StringBuffer > String

二、测试代码

package cn.test;public class Test {final static int COUNT = 10000 * 1;public static void main(String[] args) {stringAdd(COUNT);stringConcat(COUNT);stringBuilder(COUNT);stringBuffer(COUNT);}public static void stringAdd(int count) {long start = System.currentTimeMillis();String s = "";for (int i = 0; i < count; i++) {s += "1";}System.out.println("StringAdd:" + (System.currentTimeMillis() - start));}public static void stringConcat(int count) {long start = System.currentTimeMillis();String s = "";for (int i = 0; i < count; i++) {s = s.concat("1");}System.out.println("StringConcat:" + (System.currentTimeMillis() - start));}public static void stringBuilder(int count) {long start = System.currentTimeMillis();StringBuilder s = new StringBuilder();for (int i = 0; i < count; i++) {s.append("1");}System.out.println("StringBuilder:" + (System.currentTimeMillis() - start));}public static void stringBuffer(int count) {long start = System.currentTimeMillis();StringBuffer s = new StringBuffer();for (int i = 0; i < count; i++) {s.append("1");}System.out.println("StringBuffer:" + (System.currentTimeMillis() - start));}
}

COUNT的值设置

(1)10000*1

StringAdd:89
StringConcat:16
StringBuilder:1
StringBuffer:1

(2)10000*10

StringAdd:4621
StringConcat:1383
StringBuilder:3
StringBuffer:4

(3)10000*100

StringAdd:215076
StringConcat:154182
StringBuilder:16
StringBuffer:18

(4)10000*1000(String花费时间太多了,没办法测试这个数量级)

StringBuilder:50
StringBuffer:264

(5)10000*10000(String花费时间太多了,没办法测试这个数量级)

StringBuilder:377
StringBuffer:2558

String、StringBuilder、StringBuffer三者执行效率相关推荐

  1. String StringBuilder StringBuffer三者之间的区别~~~

    String StringBuilder  StringBuffer三者之间的区别~~~ String是字符串常量,它是典型的immutable类,被声明final class,所有的属性都是fina ...

  2. String ,StringBuilder,StringBuffer的区分

    String ,StringBuilder,StringBuffer的区分 一.区别 String是字符串常量,而StringBuffer和StringBuilder是字符串变量.由String创建的 ...

  3. String StringBuilder StringBuffer 包装类 Date 类 枚举类

    String,StringBuilder,StringBuffer直接的区别是: String 不可变长的字符序列 StringBuilder 可变长的字符序列,线程不安全的,效率较高 StringB ...

  4. Java 集合 --- String, StringBuilder, StringBuffer

    Java 集合 --- String, StringBuilder, StringBuffer String String的声明方式 String的不可变性 对比两个String StringBuil ...

  5. String,Stringbuilder,Stringbuffer及正则表达式

    掌握String StringBuilder StringBuffer类的区别 一.String String是不可变类,一旦String对象被创建之后,包含对象中的字符串序列都是不可改变的,直到类被 ...

  6. String , StringBuilder , StringBuffer

    String 首先从String底层看起 从底层代码被final修饰,我们能看出来,String是只读字符串,他的成员方法也都默认为final方法.所以String所引用的字符串内容不能被改变 Str ...

  7. 复习1 - String,StringBuilder,StringBuffer的执行效率区别

    该文章主要是针对于三者的执行速度来说,相对于String来说,String是要落后于StringBuffer的,StringBuffer相对于StringBuilder也稍微慢一点,开始试验 Stri ...

  8. String StringBuilder StringBuffer 对比 总结得非常好

    转自:http://www.iteye.com/topic/522167 作者:每次上网冲杯Java时,都能看到关于String无休无止的争论.还是觉得有必要让这个讨厌又很可爱的String美眉,赤裸 ...

  9. Java回顾-String/StringBuilder/StringBuffer

    一.String的特点 1.String类代表字符串.Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现. 2.String是一个final类,代表不可变字 ...

最新文章

  1. 数据结构——四大查找算法(工作必备)
  2. lua元表和元方法 《lua程序设计》 13章 读书笔记
  3. “会”和 好”纯粹是两个概念
  4. 扫描式SSD用于公式检测,代码已开源
  5. 3月28日 simulink学习(一)
  6. Qt QJsonObject QString QJsonArray 互转
  7. VMWare mac os x 优化神器 beamoff
  8. qq等级查询php源码,最新沉沦QQ等级代挂系源码统开源分享
  9. 由粒子加速器产生的反中子形成的白洞
  10. 杜比全景声 手机下载_如何在Windows 10上使用杜比全景声环绕声
  11. lisp 阿基米德螺旋_用Auto CAD怎样画椭圆螺旋
  12. java 终止程序_java中终止程序的执行
  13. 为什么当函数值为定值时,梯度垂直于等值面?
  14. 动态显示姓名--汇编语言版
  15. 用python解决放苹果问题_放苹果问题(组合数学经典)
  16. 3D打印切片软件Cura及CuraEngine原理分析
  17. Perceptron(感知机与径向基)
  18. 泉州计算机公司排名2015,福建企业100强榜单出炉!分布在这些地方
  19. hdu2955(变形的01背包)
  20. 如何实现动易官方网站内容页的移动菜单效果?

热门文章

  1. Java语法基础50题训练(上)
  2. 《C++ Primer》10.1节练习
  3. Docker容器实战思维
  4. RNN循环神经网络概述
  5. ubuntu 文件管理器死机
  6. ubuntu指令模式修改IP等信息
  7. P2260 [清华集训2012]模积和,P2834 能力测验(二维除法分块)
  8. [蓝桥杯][2017年第八届真题]发现环
  9. 树上启发式合并 简单例题
  10. [十二省联考 2019] 异或粽子(可持久化字典树 + 二叉堆)