StringBuilder详解C#

来源:互联网 发布:lol挂机软件 编辑:程序博客网 时间:2024/06/14 06:30
StringBuilder详解C#
static void Main(string[] args)
        {
            //创建一个StringBuilder对象,此对象的容量就可以保存16个字符的字符串。当超过了容量就会变成32,超过了容量就会加16字符
            StringBuilder strBuff = new StringBuilder("Dd_gWEB Hello");
            Console.WriteLine("Length of strBuff " + strBuff.Length.ToString());//对象长度
            Console.WriteLine("Capacity of strBuff "+ strBuff.Capacity.ToString());//当前分配的内存中最大字符数
            Console.WriteLine("Maximum capatity of strBuff "+ strBuff.MaxCapacity.ToString());//获取此实例的最大容量
            int n = 2;
            Console.WriteLine(strBuff.EnsureCapacity(n).ToString());//确保StringBuilder实例的最小容量,n小于strBuff的容量这返回16的倍数满足最小数;如果大于就显示n
           
            //获取strBuff中的元素
            if (strBuff[0] != 'd')
                strBuff[0] = 'd';
            //strBuff转成String是ToString()
            Console.WriteLine(strBuff.ToString());
            //添加
            strBuff.Append("hh");
            Console.WriteLine(strBuff.ToString());
            //格式
            strBuff.AppendFormat("you {0000}", 12);
            Console.WriteLine(strBuff);
            //插入
            strBuff.Insert(2, "dddd");
            Console.WriteLine(strBuff.ToString());
            strBuff.Insert(2, "s", 6);//6是插入的次数
            //移除
            strBuff.Remove(3, 7);//起始位置,长度
            Console.WriteLine(strBuff.ToString());
            //替换
            strBuff.Replace("d", "D");
            //在小数量字符时
            //string 的+和StringBuilder的Append效率没什么很大区别但是
            //数量大时,StringBuilder效率和显著提升         
            Console.ReadKey();
        }
0 0