转自http://blog.csdn.net/lovingprince/article/details/1547045

以前一直以为append比+快,今天上网查了资料才发现:这种说法是不全面的.

正确的说法应该是:

1.在运行期做字符串连接,那么append 显然比+快很多

2.在编译期就可以做连接的话,那么使用+要比append快.

例子:

String temp="nnnnnnn"+"jjjjjj"+"jjjjj";(1)

StringBuffer t=new StringBuffer();

t.append("nnnnnnn").append("jjjjjj").append("jjjjjj");(2)

执行的话,上面(1)比(2)快,因为(1)在编译期就已经做好了,相当于String temp="nnnnnnnjjjjjjjjjjjj";而(2)则需要在运行期中做计算,所以比(1)慢.

真牛,呵呵.

String(+) vs StringBuffer(append)相关推荐

  1. String“+”与StringBuffer/StringBuilder 对象的append方法

    该题来自华为.          字符串是Java程序中最常用的数据结构之一.在Java中String类已经重载了"+".也就是说,字符串可以直接 使用"+"进 ...

  2. String、StringBuffer与StringBuilder之间区别 (转载)

    最近学习到StringBuffer,心中有好些疑问,搜索了一些关于String,StringBuffer,StringBuilder的东西,现在整理一下. 关于这三个类在字符串处理中的位置不言而喻,那 ...

  3. String、StringBuffer、StringBuilder的理解

    问题: 理解 Java的字符串,String.StringBuffer.StringBuilder 有什么区别? 知识点 字符串设计和实现考量 String是Immutable(线程安全.字符串常量池 ...

  4. 常用API(Object、String、StringBuffer、用户登陆注册)

    常用API 今日内容介绍 u Object u String u StringBuilder 第1章 Java的API及Object类 在以前的学习过程中,我们都在学习对象基本特征.对象的使用以及对象 ...

  5. Java中String、StringBuffer和StringBuilder的区别

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6581009.html  在编程中,对于字符串拼接,我们可以用String类重载的+或concat(str).S ...

  6. String、StringBuffer、StringBuilder三者的异同

    String.StringBuffer.StringBuilder String.StringBuffer.StringBuilder三者的异同 StringBuffer.StringBuilder的 ...

  7. String与StringBuffer的区别

    String与StringBuffer的区别 简单地说,就是一个变量和常量的关系.StringBuffer对象的内容可以修改:而String对象一旦产生后就不可以被修改,重新赋值其实是两个对象. St ...

  8. String与StringBuffer 理解

    String的创建 String s = "hello";  JVM先根据内容"hello"查找对象,如果没有找到,则在heap上创建新对象,并将其赋予s1,否 ...

  9. java gson 解析string_Java之——深入解析String、StringBuffer、StringBuiler

    要说Java中什么哪个类用的最频繁,要数String类了.所以说,关于String .StringBuffer.StringBuilder 是有必要详细研究一下的. 那么这三者之间有什么区别,如何根据 ...

最新文章

  1. Redis运行流程源码解析
  2. VC++实现Turbo码
  3. android studio 快速删除无用的import包
  4. 文献记录(part12)--Biclustering of human cancer microarray data using co-similarity based co-clustering
  5. Python 常用函数 configparser模块
  6. Android 系统(228)---NITZ网络自动对时功能不起作用
  7. 强大的图片浏览器---------增强、降低透明度、切换下一张
  8. socket连接时间太长受什么原因影响?_晶振不起振的原因和应对措施
  9. C语言之fwrite()与fprintf()区别(十一)
  10. linux屏幕获取分辨率方法,Android 获取屏幕的分辨率
  11. 【贪心】【堆】Gym - 101485A - Assigning Workstations
  12. java mpp转图片,Java使用mpxj导入.mpp格式的Project文件(甘特图)
  13. python中英文切换_python国际化(i18n)和中英文切换
  14. GridView绑定
  15. 10个H5页面制作工具,功能全面评测
  16. 工作10个月,做地图插件的感悟——理论篇
  17. 计算机游戏155,MAME0.155经典1430款游戏合集
  18. 解读CNAS更换徽标和认可标识
  19. 依据象限搜索及混合预计耗费的A*改进算法,包含8邻域及24邻域的改进
  20. CodeForces 891E Lust(生成函数)

热门文章

  1. 如何防范电改下分布式光伏的风险
  2. 前景看淡,移动医疗九成或将成炮灰
  3. Vuex之理解Store
  4. PHP Web Shell in browser
  5. [转]jquery的ajax交付时“加载中”提示的处理方法
  6. 【转】网页制作中的CSS+DIV:dl,dt,dd分别表示什么意思啊?请说明啊,谢谢有什么功能?...
  7. 小白学爬虫——第一部分:简单学习Python
  8. Qt之二维绘图:设置动画效果
  9. Java学习笔记——面向对象 1
  10. ansible的lookup