String、StringBuilder、StringBuffer三者执行效率
一、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三者执行效率相关推荐
- String StringBuilder StringBuffer三者之间的区别~~~
String StringBuilder StringBuffer三者之间的区别~~~ String是字符串常量,它是典型的immutable类,被声明final class,所有的属性都是fina ...
- String ,StringBuilder,StringBuffer的区分
String ,StringBuilder,StringBuffer的区分 一.区别 String是字符串常量,而StringBuffer和StringBuilder是字符串变量.由String创建的 ...
- String StringBuilder StringBuffer 包装类 Date 类 枚举类
String,StringBuilder,StringBuffer直接的区别是: String 不可变长的字符序列 StringBuilder 可变长的字符序列,线程不安全的,效率较高 StringB ...
- Java 集合 --- String, StringBuilder, StringBuffer
Java 集合 --- String, StringBuilder, StringBuffer String String的声明方式 String的不可变性 对比两个String StringBuil ...
- String,Stringbuilder,Stringbuffer及正则表达式
掌握String StringBuilder StringBuffer类的区别 一.String String是不可变类,一旦String对象被创建之后,包含对象中的字符串序列都是不可改变的,直到类被 ...
- String , StringBuilder , StringBuffer
String 首先从String底层看起 从底层代码被final修饰,我们能看出来,String是只读字符串,他的成员方法也都默认为final方法.所以String所引用的字符串内容不能被改变 Str ...
- 复习1 - String,StringBuilder,StringBuffer的执行效率区别
该文章主要是针对于三者的执行速度来说,相对于String来说,String是要落后于StringBuffer的,StringBuffer相对于StringBuilder也稍微慢一点,开始试验 Stri ...
- String StringBuilder StringBuffer 对比 总结得非常好
转自:http://www.iteye.com/topic/522167 作者:每次上网冲杯Java时,都能看到关于String无休无止的争论.还是觉得有必要让这个讨厌又很可爱的String美眉,赤裸 ...
- Java回顾-String/StringBuilder/StringBuffer
一.String的特点 1.String类代表字符串.Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现. 2.String是一个final类,代表不可变字 ...
最新文章
- 数据结构——四大查找算法(工作必备)
- lua元表和元方法 《lua程序设计》 13章 读书笔记
- “会”和 好”纯粹是两个概念
- 扫描式SSD用于公式检测,代码已开源
- 3月28日 simulink学习(一)
- Qt QJsonObject QString QJsonArray 互转
- VMWare mac os x 优化神器 beamoff
- qq等级查询php源码,最新沉沦QQ等级代挂系源码统开源分享
- 由粒子加速器产生的反中子形成的白洞
- 杜比全景声 手机下载_如何在Windows 10上使用杜比全景声环绕声
- lisp 阿基米德螺旋_用Auto CAD怎样画椭圆螺旋
- java 终止程序_java中终止程序的执行
- 为什么当函数值为定值时,梯度垂直于等值面?
- 动态显示姓名--汇编语言版
- 用python解决放苹果问题_放苹果问题(组合数学经典)
- 3D打印切片软件Cura及CuraEngine原理分析
- Perceptron(感知机与径向基)
- 泉州计算机公司排名2015,福建企业100强榜单出炉!分布在这些地方
- hdu2955(变形的01背包)
- 如何实现动易官方网站内容页的移动菜单效果?