对java中的String采用+=连接字符串需要注意的一个问题

来源:互联网 发布:传奇霸业轮回每层数据 编辑:程序博客网 时间:2024/05/16 04:18

对于java 中String的 += 操作,由于其潜在的会生成新的StringBuilder进行
连接操作(参考java tutorial),如果多次使用的话会严重影响效率。

比如:
  检查某个字符串时, 如果采用下面方法并且字符串很长的话,效率会非常低下:
  String newString = "";
  int length = inString.length();
  for (int index = 0; index < length; ++index) {
      char commonChar = comments.charAt(index);
      if ((commonChar == '/'') || (commonChar == '//'))
         newString += "//";
      newString += commonChar;
 }


此时应该主动使用StringBuilder

StringBuffer newString = new StringBuffer();
newString.append("//");
newString.append(commonChar);

 

原创粉丝点击