C# 字符串

C# 字符串

字符串用于存储文本。

一个 string 字符串变量包含由双引号括起的字符集合:

实例

创建string字符串类型的变量并为其赋值:

string greeting = "Hello";

运行实例 »


字符串长度

C# 中的字符串实际上是一个对象,它包含可以对字符串执行某些操作的属性和方法。例如,可以使用Length属性找到字符串的长度:

实例

string txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
Console.WriteLine("The length of the txt string is: " + txt.Length);

运行实例 »


其他字符串方法

有许多字符串方法可用,例如ToUpper()ToLower(),它们返回转换为大写或小写的字符串副本:

实例

string txt = "Hello World";
Console.WriteLine(txt.ToUpper());   // 输出 "HELLO WORLD"
Console.WriteLine(txt.ToLower());   // 输出 "hello world"

运行实例 »


字符串串联

可以在字符串之间使用+运算符来组合它们。这称为串联:

实例

string firstName = "John ";
string lastName = "Doe";
string name = firstName + lastName;
Console.WriteLine(name);

运行实例 »

请注意,我们在"John"之后添加了一个空格,以便在打印时在firstName和lastName之间创建一个空格。

您也可以使用 string.Concat() 连接两个字符串的方法:

实例

string firstName = "John ";
string lastName = "Doe";
string name = string.Concat(firstName, lastName);
Console.WriteLine(name);

运行实例 »



字符串插值

字符串连接的另一个选项是字符串插值,它将变量的值替换为字符串中的占位符。请注意,您不必担心空格,例如串联:

实例

string firstName = "John";
string lastName = "Doe";
string name = $"My full name is: {firstName} {lastName}";
Console.WriteLine(name);

运行实例 »

还要注意,在使用字符串插值方法时,必须使用$符号

字符串插值是在C# version 6中引入的。


访问字符串

您可以通过引用方括号[]中的索引号来访问字符串中的字符。

此示例打印myString中的第一个字符:

实例

string myString = "Hello";
Console.WriteLine(myString[0]);  // 输出 "H"

运行实例 »

注释: 字符串索引以0开头:[0]是第一个字符,[1] 是第二个字符等。

本实例打印 myString 中的第二个字符(1):

实例

string myString = "Hello";
Console.WriteLine(myString[1]);  // 输出 "e"

运行实例 »

你还可以使用 IndexOf() 方法查找字符串中特定字符的索引位置:

实例

string myString = "Hello";
Console.WriteLine(myString.IndexOf("e"));  // 输出 "1"

运行实例 »

另一个有用的方法是Substring(),它从字符串中提取字符,从指定的字符位置/索引开始,然后返回一个新字符串。 此方法通常与IndexOf()一起使用,以获取特定的字符位置:

实例

// 全名
string name = "John Doe";

// 字母 D 的位置
int charPos = name.IndexOf("D");

// 获取 lastName
string lastName = name.Substring(charPos);

// 打印结果
Console.WriteLine(lastName);

运行实例 »


特殊字符

特殊字符必须写在引号内,否则C#会误解此字符串,并生成错误:

string txt = "We are the so-called "Vikings" from the north.";

避免此问题的解决方案是使用反斜杠转义字符。

反斜杠(\)转义字符将特殊字符转换为字符串:

转义符 结果 描述
\' ' 单引号
\" " 双引号
\\ \ 反斜杠

转义符 \"  在字符串中插入双引号:

实例

string txt = "We are the so-called \"Vikings\" from the north.";

亲自试一试 »

转义符 \'  在字符串中插入一个反斜杠:

实例

string txt = "It\'s alright.";

亲自试一试 »

\\  在字符串中插入一个反斜杠:

实例

string txt = "The character \\ is called backslash.";

亲自试一试 »

C# 中其他有用的转义符有:

代码 结果 试一试
\n New Line 试一试 »
\t Tab 试一试 »
\b Backspace 试一试 »

添加数字和字符串

警告!

C# 使用 + 运算符进行加法和串联。

记住: 数字相加,字符串联。

如果将两个数字相加,结果将是一个数字:

实例

int x = 10;
int y = 20;
int z = x + y;  // z 将为 30(整数/数字)

运行实例 »

如果将两个字符串相加,结果将是字符串串联:

实例

string x = "10";
string y = "20";
string z = x + y;  // z 将是 1020(一个字符串)

运行实例 »


C# 实验

学习训练

练习题:

填写缺少的代码部分,创建字符串类型的greeting问候语变量,并将其赋值为 Hello

  = ;

开始练习