黑马程序员技术交流社区

标题: string,String,Stringbuilder的区别: [打印本页]

作者: 穷傻呆丑萌    时间: 2013-7-30 10:39
标题: string,String,Stringbuilder的区别:
1)、string:表示文本(是C#中的类),是关键字,string不能作为类、结构、枚举、字段、变量、方法、属性的名称。

(2)、String:长度是不可变的(.NET Framework的类,静态数组类),可以作为类、结构、枚举、字段、变量、方法、属性的名称。

(3)、StringBuilder:长度是可变的,在C#程序当中需要对字符串进行修改,最好使用StringBuilder。

(4)、stirng和StringBuilder的区别:

  a、string a=“I am”; a=a+“Shang”;这两句代码并非改变了string的长度,而是重新创建了一个新的对象“a”,同时将第一次创建的对象“a”丢弃了,丢弃的“a”将被垃圾收集器收集掉。

  b、StringBuilder是专门用来对字符串和字符执行动态操作的类。

  StringBuilder a= new StringBuilder("I am"); a.Append("Shang");

  StringBuilder在内部有一个足够长的字符数组用于存放字符串对象,当字符串长度没超过字符数组长度时,所有操作都是针对同一个字符数组。当长度超过时,StringBuilder将自动创建一个更长的数组,把原来的数据复制到新数组中。





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