黑马程序员技术交流社区

标题: 关于StringBuilder [打印本页]

作者: lily15    时间: 2014-8-4 13:36
标题: 关于StringBuilder
本帖最后由 lily15 于 2014-8-6 13:03 编辑

怎么使用StringBuilder?它在内存中是怎么存储的?
作者: 许庭洲    时间: 2014-8-4 14:06
本帖最后由 许庭洲 于 2014-8-4 19:38 编辑

1.程序员可以使用the System.Text.Stringbuilder类来创建一个StringBuilder对象,这样就可以避免创建新的对象实例,而只是修改原来的对象。
2. 两个字符串连接时候,未采用StringBuilder进行处理
   string MyString1="Please";
   string MyString2="enter your name";
   MyNewString=string.Concat(MyString1,MyString2);
3. 采用StringBuilder
   StringBuilder MyStringBuilder=new StringBuilder("Please");
   string MyNewString="enter your name";
   MyStringBuilder.Append(MyNewString);

作者: lily15    时间: 2014-8-4 17:36
许庭洲 发表于 2014-8-4 14:06
1.程序员可以使用the System.Text.Stringbuilder类来创建一个StringBuilder对象,这样就可以避免创建新的对 ...

MyStringBuilder.Append(MyNewString);

上面MyStringBuilder的类型不是string 吗?应该不能这么用吧?
作者: 傅磊    时间: 2014-8-4 18:49
许庭洲 发表于 2014-8-4 14:06
1.程序员可以使用the System.Text.Stringbuilder类来创建一个StringBuilder对象,这样就可以避免创建新的对 ...

没看懂,为什么可以两次定义同一个string MyString1?
作者: Ken未来    时间: 2014-8-4 21:27
lily15 发表于 2014-8-4 17:36
MyStringBuilder.Append(MyNewString);

上面MyStringBuilder的类型不是string 吗?应该不能这么用吧? ...

MyStringBuilder 是StringBuilder类型的哦 。  StringBuilder MyStringBuilder=new StringBuilder("Please");
作者: lily15    时间: 2014-8-6 12:55
Ken未来 发表于 2014-8-4 21:27
MyStringBuilder 是StringBuilder类型的哦 。  StringBuilder MyStringBuilder=new StringBuilder("Pleas ...

恩 谢谢

作者: zdtone010    时间: 2014-8-6 14:57
string MyString1="Please";
    string MyString2="enter your name";
            //这里是传string1参数不是对string1定义
   String  MyNewString=string.Concat(MyString1,MyString2);
作者: zdtone010    时间: 2014-8-6 15:02
    //把字符串传给了实例对象
   StringBuilder MyStringBuilder = new StringBuilder("Please");
   string MyNewString = "enter your name";
            //对象调用方法,再次传入字符串,并且连接起来
   MyStringBuilder.Append(MyNewString);
作者: zdtone010    时间: 2014-8-6 15:20
我的这种理解不知道对不对,求正解




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2