zoukankan      html  css  js  c++  java
  • 编写高质量的代码1尽量使用StringBuilder

           对CLR来说,string对象是个比较特殊的对象,它一旦被赋值就不可改变。运行时调用String类中的任何方法或进行任何运算(如”=”赋值、“+”拼接等),都会在内存中创建一个新的字符串对象,这也意味着要为该新对象分配新的内存空间。

    StringBuilder并不会创建一个新的string对象,StringBuilder的默认长度是16,当长度大于16时,则重新分配内存,长度是16的倍数。StringBuilder重新分配内存时是按照上次容量加倍进行分配的。需要注意的是,如果指定的长度太小,需要频繁分配内存,太大了则浪费空间。

    测试代码如下

           private void stringContact()
           {
               string s = "ddd";
               s += "eee";
               s += "fff";
               s += "ggg";
               s += "hhh";
           }
           StringBuilder strb = new StringBuilder();
           private void stringContact2()
           {
               strb.Clear();
               strb.Append("ddd");
               strb.Append("eee");
               strb.Append("fff");
               strb.Append("ggg");
               strb.Append("hhh");
           }

    测试结果

    image

  • 相关阅读:
    字符串 查询
    字符串 截取
    字符串 比较
    字符串 拼接
    数组中 的数字排序
    ios中通过ALAssetsLibrary获取所有图片
    IOS中MapKit框架使用地图的显示
    IOS中CoreLocation框架地理定位
    IOS各种动画
    iOS开发--音频播放、录音、视频播放、拍照、视频录制
  • 原文地址:https://www.cnblogs.com/liuyh208/p/2533313.html
Copyright © 2011-2022 走看看