8.1.1 String类和对象

来源:互联网 发布:甄嬛传 槿汐 知乎 编辑:程序博客网 时间:2024/04/30 06:29
 String类可以用来表示文本,即由Unicode字符组成的字符串。String对象是Char对象的有序集合。

注意:String是引用类型,但是它的内容是不可改变。即一个String对象一旦创建了,那么该对象的内容是不能被修改的。

  下面的代码声明了两个字符串变量strAstrB,并且它们的值分别为“abcd”和“1234”。此时,系统的内存分配如图8.1所示。

string strA = "abcd";

string strB = "1234";

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  下面的代码修改了字符串变量strA的值,并设置它的值为变量strA在修改前的值和变量strB的值之和(在此,和表示字符串拼接)。因此,变量strA和变量strB的值分别为“abcd1234”和“1234”。此时,系统的内存分配如图8.2所示。

string strA = strA + strB;

注意:在上述程序代码中,变量strA被修改之后,系统实际上重新为其分配了一块新内存来保存字符串“abcd1234”。变量strA被修改之前的分配的内存已经不能被访问了。因此,如果代码中包含大量的字符串赋值操作,那么程序将至少为每一个字符串操作都重新分配了一块新内存。这种方式的代码是非常消耗系统资源的。

 

 

 

 

  String类提供了1个公共字段和2个公共属性,它们的具体说明如表8-1所示。

8-1 String类的字段和属性

字段和属性

说明

Empty(静态字段)

空字符串。

Length

实例中的字符数,即字符串的长度。

Chars

获取实例中指定字符位置的字符。