• 我也想谈谈 String类和 StringBuilder类


    .NET除了有我们一直常用的String类之外,还提供了一个新的字符型数据类型,那就是StringBuilder类,在MSDN上是这样介绍StringBuilder的:
    String 对象是不可改变的。每次使用 System.String 类中的方法之一时,都要在内存中创建一个新的字符串对象,这就需要为该新对象分配新的空间。在需要对字符串执行重复修改的情况下,与创建新的 String 对象相关的系统开销可能会非常昂贵。如果要修改字符串而不创建新的对象,则可以使用 System.Text.StringBuilder 类。例如,当在一个循环中将许多字符串连接在一起时,使用 StringBuilder 类可以提升性能。


    通过MSDN中的介绍,StringBuilder是起着节约资源的作用,如果我们要对一个字符串,经常要扩充,或不知道他将会有多长的容量空间来存放某一个字符串,我想StringBuilder是可以比较好的胜任的。

    StringBuilder和String比较而言,StringBuilder具有String所有能实现的属性和方法,并且StringBuilder比String还多了很多功能。

    String具有很好的插入、删除、替换功能,StringBuilder同样也具有。虽然StringBuilder是可以完全取代String的,但是,可能是大家习惯性的原因吧,用惯了String类,对又长又不是很熟悉的StringBuilder类使用的人还是很少。

    在这里也列举几行关于StringBuilder的代码:

    StringBuilder StrB = new StringBuilder("第一个字符串!");
    StrB.Append(
    "加到字符串后面的");
    MessageBox.Show(StrB);
    //显示为: 第一个字符串!加到字符串后面的
    同样的,StringBuilder类的构造函数也被多次重载,它可以为其值设置最大容量,例如:
    StringBuilder StrB = new StringBuilder("可以设置最大容量为80", 80);  

    另外,还可以使用它的 Capacity 属性来设置对象的最大长度。

    例如:StrB.Capacity=90;

    StringBuilder还可以这样:
    StringBuilder Str=new StringBuilder();
    Str.ApppendFormat("{0}美女,我是暗恋你的{1}","小英","远远");
    Str的结果是: 小英美女,我是暗恋你的远远

    StringBuilder类还有常用的Insert、Remove、Replace等方法,为大家提供对字符串的灵活操作。

    我想StringBuilder或许还有更多比String的优秀之处,我还没有发现,希望有朋友能给我留言,一起交流,一起进步。

    期待大家在下面留言...
  • 相关阅读:
    用IntelliJ IDEA 开发Spring+SpringMVC+Mybatis框架 分步搭建一:建立MAVEN Web项目
    jvm学习笔记二(减少GC开销的建议)
    jvm学习笔记一(垃圾回收算法)
    【转】 StringUtils中 isNotEmpty 和isNotBlank的区别
    单例模式
    工厂模式
    个人项目作业
    第一次作业-热身!
    第四单元总结
    第三单元总结
  • 原文地址:https://www.cnblogs.com/lixyvip/p/979464.html
Copyright © 2020-2023  润新知