首页 > 编程笔记 > C#笔记 阅读:23

C# string字符串的声明、初始化和使用(附带实例)

前面介绍了 char 类型可以保存字符,但它只能表示单个字符。如果要用 char 类型来展示像“版权说明”、“功能简介”之类的内容,则可以使用 C# 中最常用到的一个概念—字符串。

顾名思义,字符串就是用字符拼接成的文本值。字符串的存储方式类似于数组,不仅字符串的长度可取,而且每一位上的元素也可取。在 C# 语言中,可以通过 string 类创建字符串。

C#字符串的声明

在 C# 语言中,字符串必须包含在一对双引号(" ")之内。例如:
"23.23"、"ABCDE"、"你好"
这些都是字符串常量,字符串常量是系统能够显示的任何文字信息,甚至是单个字符。

注意在 C# 中,由双引号(" ")包围的都是字符串,不能作为其他数据类型来使用,例如,"1+2" 的输出结果永远也不会是 3。

可以通过以下语法格式来声明字符串:
string str = [null];

例如,声明一个字符串变量 strName,代码如下:
string strName;

C#字符串的初始化

声明字符串之后,如果要使用该字符串,例如,下面的代码:
string str;
Console.WriteLine(str);
运行上面的代码,将会出现如下图所示的错误提示。


图 1 使用未初始化的变量时的错误提示

从图 1 可以看出,要使用一个变量,必须首先对其进行初始化(即赋值),对字符串进行初始化的方法主要有以下几种:
1) 引用字符串常量,示例代码如下:
string a = "时间就是金钱,我的朋友。";
string b = "锄禾日当午";
string str1, str2;
str1 = "We are students";
str2 = "We are students";
当两个字符串对象引用相同的常量时,就会有相同的实体,例如,在上面的代码中,str1 和 str2 的内存示意图如下图所示。


图 2 两个字符串对象引用相同的常量

2) 利用字符数组初始化,示例代码如下:
char[] charArray = { 't', 'i', 'm', 'e' };
string str = new string(charArray);

3) 提取字符数组中的一部分初始化字符串,示例代码如下:
char[] charArray = { '时', '间', '就', '是', '金', '钱' };
string str = new string(charArray, 4, 2);

C#获取字符串长度

获取字符串的长度可以使用 string 类的 Length 属性,其语法格式如下:
public int Length { get; }
其中,属性值表示当前字符串中字符的数量。

例如,定义一个字符串变量,并为其赋值,然后使用 Length 属性获取该字符串的长度,代码如下:
string num = "12345 67890";
int size = num.Length;
输出变量 size 的值,得到的结果是 11,这表示使用 Length 属性返回的字符串长度是包括字符串中的空格的。

C#获取指定位置的字符

获取指定位置的字符可以使用 string 类的 char 属性,其语法格式如下:
public char this[
    int index
] { get; }

例如,定义一个字符串变量,并为其赋值,然后获取该字符串索引位置为 5 的字符并输出,代码如下:
string str = "努力工作是人生最好的投资"; // 创建字符串对象str
char chr = str[5]; // 将字符串str中索引位置为5的字符赋值给chr
Console.WriteLine("字符串中索引位置为5的字符是:" + chr); // 输出chr
运行结果如下:

字符串中索引位置为5的字符是:人
字符串中的索引位置是从 0 开始的。

相关文章