A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© sunyue 中级黑马   /  2015-4-30 10:55  /  453 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 sunyue 于 2015-4-30 10:57 编辑

问题在第三行,append char比String性能要好,另外就是初始化StringBuffer没有指定size,导致中间append时可能重新调整内部数组大小。如果是JDK1.5最好用StringBuilder取代StringBuffer,除非有线程安全的要求。还有一种方式就是可以直接连接字符串。缺点就是无法初始化时指定长度。
  1. StringBuffer sb = new StringBuffer();  
  2. sb.append("Name: ");  
  3. sb.append(name + '\n');  
  4. sb.append("!");  
  5. ...  
  6. String s = sb.toString();
复制代码
正确的写法:
  1. StringBuilder sb = new StringBuilder(100);  
  2. sb.append("Name: ");  
  3. sb.append(name);  
  4. sb.append("\n!");  
  5. String s = sb.toString();
复制代码



评分

参与人数 1黑马币 +5 收起 理由
黄小橙 + 5 加油

查看全部评分

1 个回复

倒序浏览
顶楼主~感谢分享
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马